yes

Thu, 22 Jan 2026 19:36:58 +0300

author
Lain Iwakura <lain@iwakura.page>
date
Thu, 22 Jan 2026 19:36:58 +0300
changeset 0
fbc739176a6e
child 1
6b58ac734d25

yes

changelog.7 file | annotate | diff | comparison | revisions
dist/changelog.7 file | annotate | diff | comparison | revisions
dist/changelog.html file | annotate | diff | comparison | revisions
dist/email.7 file | annotate | diff | comparison | revisions
dist/email.html file | annotate | diff | comparison | revisions
dist/id_key.pub file | annotate | diff | comparison | revisions
dist/index.1 file | annotate | diff | comparison | revisions
dist/index.html file | annotate | diff | comparison | revisions
dist/irc.7 file | annotate | diff | comparison | revisions
dist/irc.html file | annotate | diff | comparison | revisions
dist/minisign.pub file | annotate | diff | comparison | revisions
dist/minisign1.pub file | annotate | diff | comparison | revisions
dist/minisign2.pub file | annotate | diff | comparison | revisions
dist/scheme.css file | annotate | diff | comparison | revisions
dist/ssh.7 file | annotate | diff | comparison | revisions
dist/ssh.html file | annotate | diff | comparison | revisions
dist/ssh@keys file | annotate | diff | comparison | revisions
dist/style.css file | annotate | diff | comparison | revisions
email.7 file | annotate | diff | comparison | revisions
index.1 file | annotate | diff | comparison | revisions
irc.7 file | annotate | diff | comparison | revisions
makefile file | annotate | diff | comparison | revisions
minisign1.pub file | annotate | diff | comparison | revisions
minisign2.pub file | annotate | diff | comparison | revisions
scheme.css file | annotate | diff | comparison | revisions
ssh.7 file | annotate | diff | comparison | revisions
ssh@keys file | annotate | diff | comparison | revisions
style.css file | annotate | diff | comparison | revisions
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/changelog.7	Thu Jan 22 19:36:58 2026 +0300
@@ -0,0 +1,15 @@
+.TH CHANGELOG 7 "2026-01-12" "unixfriends" "Project Documentation"
+
+.SH NAME
+changelog \- site update history
+
+.SH DESCRIPTION
+This document describes notable changes to the unixfriends website.
+
+.SH 28.12.25
+.IP \(bu 2
+\fBadded public keys\fR
+
+.SH 27.12.25
+.IP \(bu 2
+\fBinitial public release\fR
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dist/changelog.7	Thu Jan 22 19:36:58 2026 +0300
@@ -0,0 +1,15 @@
+.TH CHANGELOG 7 "2026-01-12" "unixfriends" "Project Documentation"
+
+.SH NAME
+changelog \- site update history
+
+.SH DESCRIPTION
+This document describes notable changes to the unixfriends website.
+
+.SH 28.12.25
+.IP \(bu 2
+\fBadded public keys\fR
+
+.SH 27.12.25
+.IP \(bu 2
+\fBinitial public release\fR
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dist/changelog.html	Thu Jan 22 19:36:58 2026 +0300
@@ -0,0 +1,54 @@
+<!DOCTYPE html>
+<html>
+<head>
+  <meta charset="utf-8"/>
+  <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
+  <link rel="stylesheet" href="style.css" type="text/css" media="all"/>
+  <title>CHANGELOG(7)</title>
+</head>
+<body>
+<table class="head">
+  <tr>
+    <td class="head-ltitle">CHANGELOG(7)</td>
+    <td class="head-vol">Project Documentation</td>
+    <td class="head-rtitle">CHANGELOG(7)</td>
+  </tr>
+</table>
+<div class="manual-text">
+<p class="Pp"></p>
+<section class="Sh">
+<h1 class="Sh" id="NAME"><a class="permalink" href="#NAME">NAME</a></h1>
+<p class="Pp">changelog - site update history</p>
+<p class="Pp"></p>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="DESCRIPTION"><a class="permalink" href="#DESCRIPTION">DESCRIPTION</a></h1>
+<p class="Pp">This document describes notable changes to the unixfriends
+    website.</p>
+<p class="Pp"></p>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="28.12.25"><a class="permalink" href="#28.12.25">28.12.25</a></h1>
+<dl class="Bl-tag">
+  <dt>&#x2022;</dt>
+  <dd><b>added public keys</b>
+    <p class="Pp"></p>
+  </dd>
+</dl>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="27.12.25"><a class="permalink" href="#27.12.25">27.12.25</a></h1>
+<dl class="Bl-tag">
+  <dt>&#x2022;</dt>
+  <dd><b>initial public release</b></dd>
+</dl>
+</section>
+</div>
+<table class="foot">
+  <tr>
+    <td class="foot-date">2026-01-12</td>
+    <td class="foot-os">unixfriends</td>
+  </tr>
+</table>
+</body>
+</html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dist/email.7	Thu Jan 22 19:36:58 2026 +0300
@@ -0,0 +1,49 @@
+.TH EMAIL 7 "2026" "unixfriends" "Miscellaneous Information"
+.SH NAME
+email \- contact information
+.SH DESCRIPTION
+this page contains the contact email address.
+.UR index.html
+back to main page
+.PP
+the address is intentionally not written in plain text.
+to obtain it, you must decode the following payload.
+
+.SH PAYLOAD
+.nf
+\&                                         ,--,
+\&          ____                        ,---.'|
+\&        ,'  , `.   ,---,         ,---,|   | :
+\&     ,-+-,.' _ |  '  .' \\     ,`--.' |:   : |
+\&  ,-+-. ;   , || /  ;    '.   |   :  :|   ' :
+\& ,--.'|'   |  ;|:  :       \\  :   |  ';   ; '
+\&|   |  ,', |  '::  |   /\\   \\ |   :  |'   | |__
+\&|   | /  | |  |||  :  ' ;.   :'   '  ;|   | :.'|
+\&'   | :  | :  |,|  |  ;/  \\   \\   |  |'   :    ;
+\&;   . |  ; |--' '  :  | \\  \\ ,'   :  ;|   |  ./
+\&|   : |  | ,    |  |  '  '--' |   |  ';   : ;
+\&|   : '  |/     |  :  :       '   :  ||   ,/
+\&;   | |`-'      |  | ,'       ;   |.' '---'
+\&|   ;/          `--''         '---'
+\&'---'
+\&                      (powered by OpenBSD OpenSMTPd)
+.fi
+
+.SH DECODE
+run the following command in a POSIX shell:
+
+.nf
+echo "H4sIALoYUGkAA8tJzMxzyEnNzc8rSU3Uy8nP4QIAjNU6PhIAAAA=" | base64 -d | gzip -d
+.fi
+
+.SH NOTES
+this method is used to avoid automated address harvesting.
+
+.PP
+\fBif you cannot decode this, you probably do not need the address.\f
+
+.SH SEE ALSO
+.Xr base32 1 ,
+.Xr gzip 1 ,
+.Xr base64 1 ,
+.Xr mandoc 1
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dist/email.html	Thu Jan 22 19:36:58 2026 +0300
@@ -0,0 +1,77 @@
+<!DOCTYPE html>
+<html>
+<head>
+  <meta charset="utf-8"/>
+  <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
+  <link rel="stylesheet" href="style.css" type="text/css" media="all"/>
+  <title>EMAIL(7)</title>
+</head>
+<body>
+<table class="head">
+  <tr>
+    <td class="head-ltitle">EMAIL(7)</td>
+    <td class="head-vol">Miscellaneous Information</td>
+    <td class="head-rtitle">EMAIL(7)</td>
+  </tr>
+</table>
+<div class="manual-text">
+<section class="Sh">
+<h1 class="Sh" id="NAME"><a class="permalink" href="#NAME">NAME</a></h1>
+<p class="Pp">email - contact information</p>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="DESCRIPTION"><a class="permalink" href="#DESCRIPTION">DESCRIPTION</a></h1>
+<p class="Pp">this page contains the contact email address.
+    <a class="Lk" href="index.html">back to main page</a></p>
+<p class="Pp">the address is intentionally not written in plain text. to obtain
+    it, you must decode the following payload.</p>
+<p class="Pp"></p>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="PAYLOAD"><a class="permalink" href="#PAYLOAD">PAYLOAD</a></h1>
+<pre>                                         ,--,
+          ____                        ,---.'|
+        ,'  , `.   ,---,         ,---,|   | :
+     ,-+-,.' _ |  '  .' \     ,`--.' |:   : |
+  ,-+-. ;   , || /  ;    '.   |   :  :|   ' :
+ ,--.'|'   |  ;|:  :       \  :   |  ';   ; '
+|   |  ,', |  '::  |   /\   \ |   :  |'   | |__
+|   | /  | |  |||  :  ' ;.   :'   '  ;|   | :.'|
+'   | :  | :  |,|  |  ;/  \   \   |  |'   :    ;
+;   . |  ; |--' '  :  | \  \ ,'   :  ;|   |  ./
+|   : |  | ,    |  |  '  '--' |   |  ';   : ;
+|   : '  |/     |  :  :       '   :  ||   ,/
+;   | |`-'      |  | ,'       ;   |.' '---'
+|   ;/          `--''         '---'
+'---'
+                      (powered by OpenBSD OpenSMTPd)</pre>
+<p class="Pp"></p>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="DECODE"><a class="permalink" href="#DECODE">DECODE</a></h1>
+<p class="Pp">run the following command in a POSIX shell:</p>
+<p class="Pp"></p>
+<pre>echo &quot;H4sIALoYUGkAA8tJzMxzyEnNzc8rSU3Uy8nP4QIAjNU6PhIAAAA=&quot; | base64 -d | gzip -d</pre>
+<p class="Pp"></p>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="NOTES"><a class="permalink" href="#NOTES">NOTES</a></h1>
+<p class="Pp">this method is used to avoid automated address harvesting.</p>
+<p class="Pp"></p>
+<p class="Pp"><b>if you cannot decode this, you probably do not need the
+    address.</b></p>
+<p class="Pp"></p>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="SEE_ALSO"><a class="permalink" href="#SEE_ALSO">SEE
+  ALSO</a></h1>
+</section>
+</div>
+<table class="foot">
+  <tr>
+    <td class="foot-date">2026</td>
+    <td class="foot-os">unixfriends</td>
+  </tr>
+</table>
+</body>
+</html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dist/id_key.pub	Thu Jan 22 19:36:58 2026 +0300
@@ -0,0 +1,1 @@
+ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINZKEd84TD0Nz7b7oeeKMvch1no/3dHm43uXBFo4uIll lain@Lains-MacBook-Air
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dist/index.1	Thu Jan 22 19:36:58 2026 +0300
@@ -0,0 +1,53 @@
+.TH LAIN 1 "2026" "unixfriends" "User Pages"
+.SH NAME
+\fBlain\fR \- silly guy
+.SH SYNOPSIS
+.B lain
+.RI [ options ]
+.SH DESCRIPTION
+some kind of developer interested in backend, sysadmin and security.
+
+.SH CONTACTS
+.TP
+mail
+.UR email.html
+click here
+.UE
+.TP
+telegram
+@pvlabs
+
+.SH DEVICES
+thinkpad x230, pixel 3a, macbook air m3, iphone 14 pro.
+
+.SH KEYS
+.nf
+age: age1xsmj00a47qsuul4lw8sfsyqqve9rtxy4h72q0md3cajplj9cr46qtg2q3u
+.fi
+.nf
+ssh: curl https://iwakura.page/ssh@keys
+.fi
+.nf
+minisign: curl https://iwakura.page/minisign1.pub
+minisign (trezor): curl https://iwakura.page/minisign2.pub
+.fi
+.SH SEE ALSO
+man(1), plan9(7), nixos(8), 9front(7), 
+.UR changelog.html
+changelog(7),
+.UE
+.UR https://text.iwakura.page
+notes(7),
+.UE
+.UR https://git.iwakura.page
+git(1)
+.UE
+.UR irc.html
+catgirl(1)
+.UE
+.UR ssh.html
+ssh(1)
+.UE
+
+.PP
+i believe the internet should remain simple.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dist/index.html	Thu Jan 22 19:36:58 2026 +0300
@@ -0,0 +1,75 @@
+<!DOCTYPE html>
+<html>
+<head>
+  <meta charset="utf-8"/>
+  <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
+  <link rel="stylesheet" href="style.css" type="text/css" media="all"/>
+  <title>LAIN(1)</title>
+</head>
+<body>
+<table class="head">
+  <tr>
+    <td class="head-ltitle">LAIN(1)</td>
+    <td class="head-vol">User Pages</td>
+    <td class="head-rtitle">LAIN(1)</td>
+  </tr>
+</table>
+<div class="manual-text">
+<section class="Sh">
+<h1 class="Sh" id="NAME"><a class="permalink" href="#NAME">NAME</a></h1>
+<p class="Pp"><b>lain</b> - silly guy</p>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="SYNOPSIS"><a class="permalink" href="#SYNOPSIS">SYNOPSIS</a></h1>
+<p class="Pp"><b>lain</b> [<i>options</i>]</p>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="DESCRIPTION"><a class="permalink" href="#DESCRIPTION">DESCRIPTION</a></h1>
+<p class="Pp">some kind of developer interested in backend, sysadmin and
+    security.</p>
+<p class="Pp"></p>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="CONTACTS"><a class="permalink" href="#CONTACTS">CONTACTS</a></h1>
+<dl class="Bl-tag">
+  <dt id="mail"><a class="permalink" href="#mail">mail</a></dt>
+  <dd><a class="Lk" href="email.html">click here</a></dd>
+  <dt id="telegram"><a class="permalink" href="#telegram">telegram</a></dt>
+  <dd>@pvlabs
+    <p class="Pp"></p>
+  </dd>
+</dl>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="DEVICES"><a class="permalink" href="#DEVICES">DEVICES</a></h1>
+<p class="Pp">thinkpad x230, pixel 3a, macbook air m3, iphone 14 pro.</p>
+<p class="Pp"></p>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="KEYS"><a class="permalink" href="#KEYS">KEYS</a></h1>
+<pre>age: age1xsmj00a47qsuul4lw8sfsyqqve9rtxy4h72q0md3cajplj9cr46qtg2q3u</pre>
+<pre>ssh: curl https://iwakura.page/ssh@keys</pre>
+<pre>minisign: curl https://iwakura.page/minisign1.pub
+minisign (trezor): curl https://iwakura.page/minisign2.pub</pre>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="SEE_ALSO"><a class="permalink" href="#SEE_ALSO">SEE
+  ALSO</a></h1>
+<p class="Pp">man(1), plan9(7), nixos(8), 9front(7),
+    <a class="Lk" href="changelog.html">changelog(7),</a>
+    <a class="Lk" href="https://text.iwakura.page">notes(7),</a>
+    <a class="Lk" href="https://git.iwakura.page">git(1)</a>
+    <a class="Lk" href="irc.html">catgirl(1)</a>
+    <a class="Lk" href="ssh.html">ssh(1)</a></p>
+<p class="Pp"></p>
+<p class="Pp">i believe the internet should remain simple.</p>
+</section>
+</div>
+<table class="foot">
+  <tr>
+    <td class="foot-date">2026</td>
+    <td class="foot-os">unixfriends</td>
+  </tr>
+</table>
+</body>
+</html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dist/irc.7	Thu Jan 22 19:36:58 2026 +0300
@@ -0,0 +1,14 @@
+.TH "IRC" 7 "2026" "unixfriends" "Miscellaneous Information"
+.SH NAME
+irc \- Internet Relay Chat
+.SH DESCRIPTION
+here is a link to my IRC server, sometimes im online sometimes im not
+.nf
+chat.iwakura.page
+.fi
+
+.SH NOTES
+one rule - dont be a dick
+
+.SH SEE ALSO
+.Xr ssh 1
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dist/irc.html	Thu Jan 22 19:36:58 2026 +0300
@@ -0,0 +1,46 @@
+<!DOCTYPE html>
+<html>
+<head>
+  <meta charset="utf-8"/>
+  <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
+  <link rel="stylesheet" href="style.css" type="text/css" media="all"/>
+  <title>IRC(7)</title>
+</head>
+<body>
+<table class="head">
+  <tr>
+    <td class="head-ltitle">IRC(7)</td>
+    <td class="head-vol">Miscellaneous Information</td>
+    <td class="head-rtitle">IRC(7)</td>
+  </tr>
+</table>
+<div class="manual-text">
+<section class="Sh">
+<h1 class="Sh" id="NAME"><a class="permalink" href="#NAME">NAME</a></h1>
+<p class="Pp">irc - Internet Relay Chat</p>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="DESCRIPTION"><a class="permalink" href="#DESCRIPTION">DESCRIPTION</a></h1>
+<p class="Pp">here is a link to my IRC server, sometimes im online sometimes im
+    not</p>
+<pre>chat.iwakura.page</pre>
+<p class="Pp"></p>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="NOTES"><a class="permalink" href="#NOTES">NOTES</a></h1>
+<p class="Pp">one rule - dont be a dick</p>
+<p class="Pp"></p>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="SEE_ALSO"><a class="permalink" href="#SEE_ALSO">SEE
+  ALSO</a></h1>
+</section>
+</div>
+<table class="foot">
+  <tr>
+    <td class="foot-date">2026</td>
+    <td class="foot-os">unixfriends</td>
+  </tr>
+</table>
+</body>
+</html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dist/minisign.pub	Thu Jan 22 19:36:58 2026 +0300
@@ -0,0 +1,2 @@
+untrusted comment: minisign public key 504795B4B4A0A852
+RWRSqKC0tJVHUAa+TU7d/NozuAwBnrqEnnPZREh4Ihuw0AP54g4ToyFp
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dist/minisign1.pub	Thu Jan 22 19:36:58 2026 +0300
@@ -0,0 +1,2 @@
+untrusted comment: minisign public key 504795B4B4A0A852
+RWRSqKC0tJVHUAa+TU7d/NozuAwBnrqEnnPZREh4Ihuw0AP54g4ToyFp
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dist/minisign2.pub	Thu Jan 22 19:36:58 2026 +0300
@@ -0,0 +1,2 @@
+untrusted comment: identity <signify://lain@notes|ed25519>
+RWRUfLQF6H2Jgr8IvFUeY5Zx8aAsfYxOHYI72FnWk5OBGfpsQdCOkPdT
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dist/scheme.css	Thu Jan 22 19:36:58 2026 +0300
@@ -0,0 +1,66 @@
+/* taken from https://causal.agency/ */
+:root {
+	--ansi0: #161510;
+	--ansi1: #A32810;
+	--ansi2: #727A18;
+	--ansi3: #A37720;
+	--ansi4: #3D6266;
+	--ansi5: #7A4955;
+	--ansi6: #557A55;
+	--ansi7: #998D6B;
+	--ansi8: #4C4635;
+	--ansi9: #CC3214;
+	--ansi10: #8E991E;
+	--ansi11: #CC9528;
+	--ansi12: #4C7B7F;
+	--ansi13: #995B6B;
+	--ansi14: #6B996B;
+	--ansi15: #CCBC8E;
+	--ansi16: #14130E;
+	--ansi17: #B7A980;
+	--ansi18: #CCBC8E;
+	--ansi19: #A34110;
+	--ansi20: #7A7155;
+}
+.fg0 { color: var(--ansi0); }
+.bg0 { background-color: var(--ansi0); }
+.fg1 { color: var(--ansi1); }
+.bg1 { background-color: var(--ansi1); }
+.fg2 { color: var(--ansi2); }
+.bg2 { background-color: var(--ansi2); }
+.fg3 { color: var(--ansi3); }
+.bg3 { background-color: var(--ansi3); }
+.fg4 { color: var(--ansi4); }
+.bg4 { background-color: var(--ansi4); }
+.fg5 { color: var(--ansi5); }
+.bg5 { background-color: var(--ansi5); }
+.fg6 { color: var(--ansi6); }
+.bg6 { background-color: var(--ansi6); }
+.fg7 { color: var(--ansi7); }
+.bg7 { background-color: var(--ansi7); }
+.fg8 { color: var(--ansi8); }
+.bg8 { background-color: var(--ansi8); }
+.fg9 { color: var(--ansi9); }
+.bg9 { background-color: var(--ansi9); }
+.fg10 { color: var(--ansi10); }
+.bg10 { background-color: var(--ansi10); }
+.fg11 { color: var(--ansi11); }
+.bg11 { background-color: var(--ansi11); }
+.fg12 { color: var(--ansi12); }
+.bg12 { background-color: var(--ansi12); }
+.fg13 { color: var(--ansi13); }
+.bg13 { background-color: var(--ansi13); }
+.fg14 { color: var(--ansi14); }
+.bg14 { background-color: var(--ansi14); }
+.fg15 { color: var(--ansi15); }
+.bg15 { background-color: var(--ansi15); }
+.fg16 { color: var(--ansi16); }
+.bg16 { background-color: var(--ansi16); }
+.fg17 { color: var(--ansi17); }
+.bg17 { background-color: var(--ansi17); }
+.fg18 { color: var(--ansi18); }
+.bg18 { background-color: var(--ansi18); }
+.fg19 { color: var(--ansi19); }
+.bg19 { background-color: var(--ansi19); }
+.fg20 { color: var(--ansi20); }
+.bg20 { background-color: var(--ansi20); }
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dist/ssh.7	Thu Jan 22 19:36:58 2026 +0300
@@ -0,0 +1,22 @@
+.TH "SSH" 7 "2026" "unixfriends" "Miscellaneous Information"
+.SH NAME
+irc \- Internet Relay Chat
+.SH DESCRIPTION
+here is a link to my torus and 
+.UR https://git.causal.agency/play
+"play" 
+.UE
+server
+.nf
+ssh torus@ssh.iwakura.page
+.fi
+or
+.nf
+ssh play@ssh.iwakura.page
+.fi
+
+.SH NOTES
+one rule - dont be a dick
+
+.SH SEE ALSO
+.Xr ssh 1
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dist/ssh.html	Thu Jan 22 19:36:58 2026 +0300
@@ -0,0 +1,49 @@
+<!DOCTYPE html>
+<html>
+<head>
+  <meta charset="utf-8"/>
+  <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
+  <link rel="stylesheet" href="style.css" type="text/css" media="all"/>
+  <title>SSH(7)</title>
+</head>
+<body>
+<table class="head">
+  <tr>
+    <td class="head-ltitle">SSH(7)</td>
+    <td class="head-vol">Miscellaneous Information</td>
+    <td class="head-rtitle">SSH(7)</td>
+  </tr>
+</table>
+<div class="manual-text">
+<section class="Sh">
+<h1 class="Sh" id="NAME"><a class="permalink" href="#NAME">NAME</a></h1>
+<p class="Pp">irc - Internet Relay Chat</p>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="DESCRIPTION"><a class="permalink" href="#DESCRIPTION">DESCRIPTION</a></h1>
+<p class="Pp">here is a link to my torus and
+    <a class="Lk" href="https://git.causal.agency/play">&quot;play&quot;</a>
+    server</p>
+<pre>ssh torus@ssh.iwakura.page</pre>
+<p class="Pp">or</p>
+<pre>ssh play@ssh.iwakura.page</pre>
+<p class="Pp"></p>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="NOTES"><a class="permalink" href="#NOTES">NOTES</a></h1>
+<p class="Pp">one rule - dont be a dick</p>
+<p class="Pp"></p>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="SEE_ALSO"><a class="permalink" href="#SEE_ALSO">SEE
+  ALSO</a></h1>
+</section>
+</div>
+<table class="foot">
+  <tr>
+    <td class="foot-date">2026</td>
+    <td class="foot-os">unixfriends</td>
+  </tr>
+</table>
+</body>
+</html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dist/ssh@keys	Thu Jan 22 19:36:58 2026 +0300
@@ -0,0 +1,2 @@
+ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINZKEd84TD0Nz7b7oeeKMvch1no/3dHm43uXBFo4uIll lain@Lains-MacBook-Air
+ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBBEv42WCiA40Ir1FJ6i/DZFJNScBwawJrrLfrouqlTk5E1hIyGPsMfsMXuXnDLIQQpfam4l+1Q0pnu8SfnfgIcU= <ssh://lain@notes|nist256p1>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dist/style.css	Thu Jan 22 19:36:58 2026 +0300
@@ -0,0 +1,29 @@
+/* styles from https://causal.agency/ */
+@import url("scheme.css");
+
+table.head, table.foot { width: 100%; }
+td.head-rtitle, td.foot-os { text-align: right; }
+td.head-vol { text-align: center; }
+div.Pp { margin: 1ex 0ex; }
+div.Nd, div.Bf, div.Op { display: inline; }
+span.Pa, span.Ad { font-style: italic; }
+span.Ms { font-weight: bold; }
+dl.Bl-diag > dt { font-weight: bold; }
+code.Nm, code.Fl, code.Cm, code.Ic, code.In, code.Fd, code.Fn,
+code.Cd { font-weight: bold; font-family: inherit; }
+
+div.head, div.foot { display: flex; justify-content: space-between; }
+.head-ltitle, .foot-date { flex: 1; }
+.head-vol { flex: 0 1 auto; text-align: center; }
+.head-rtitle, .foot-os { flex: 1; text-align: right; }
+
+html { font-family: monospace; line-height: 1.25em; }
+body { max-width: 80ch; margin: 1em auto; padding: 0 1ch; }
+table { border-collapse: collapse; }
+table.Nm code.Nm { padding-right: 1ch; }
+table.foot { margin-top: 1em; }
+
+html { background-color: var(--ansi16); color: var(--ansi17); }
+a { color: var(--ansi4); }
+a:visited { color: var(--ansi5); }
+a.permalink { color: var(--ansi3); text-decoration: none; }
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/email.7	Thu Jan 22 19:36:58 2026 +0300
@@ -0,0 +1,49 @@
+.TH EMAIL 7 "2026" "unixfriends" "Miscellaneous Information"
+.SH NAME
+email \- contact information
+.SH DESCRIPTION
+this page contains the contact email address.
+.UR index.html
+back to main page
+.PP
+the address is intentionally not written in plain text.
+to obtain it, you must decode the following payload.
+
+.SH PAYLOAD
+.nf
+\&                                         ,--,
+\&          ____                        ,---.'|
+\&        ,'  , `.   ,---,         ,---,|   | :
+\&     ,-+-,.' _ |  '  .' \\     ,`--.' |:   : |
+\&  ,-+-. ;   , || /  ;    '.   |   :  :|   ' :
+\& ,--.'|'   |  ;|:  :       \\  :   |  ';   ; '
+\&|   |  ,', |  '::  |   /\\   \\ |   :  |'   | |__
+\&|   | /  | |  |||  :  ' ;.   :'   '  ;|   | :.'|
+\&'   | :  | :  |,|  |  ;/  \\   \\   |  |'   :    ;
+\&;   . |  ; |--' '  :  | \\  \\ ,'   :  ;|   |  ./
+\&|   : |  | ,    |  |  '  '--' |   |  ';   : ;
+\&|   : '  |/     |  :  :       '   :  ||   ,/
+\&;   | |`-'      |  | ,'       ;   |.' '---'
+\&|   ;/          `--''         '---'
+\&'---'
+\&                      (powered by OpenBSD OpenSMTPd)
+.fi
+
+.SH DECODE
+run the following command in a POSIX shell:
+
+.nf
+echo "H4sIABx1amkAA8tJzMxzyCxPzC4tStQrSExP5QIARi3kiBIAAAA=" | base64 -d | gzip -d
+.fi
+
+.SH NOTES
+this method is used to avoid automated address harvesting.
+
+.PP
+\fBif you cannot decode this, you probably do not need the address.\f
+
+.SH SEE ALSO
+.Xr base32 1 ,
+.Xr gzip 1 ,
+.Xr base64 1 ,
+.Xr mandoc 1
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/index.1	Thu Jan 22 19:36:58 2026 +0300
@@ -0,0 +1,53 @@
+.TH LAIN 1 "2026" "unixfriends" "User Pages"
+.SH NAME
+\fBlain\fR \- silly guy
+.SH SYNOPSIS
+.B lain
+.RI [ options ]
+.SH DESCRIPTION
+some kind of developer interested in backend, sysadmin and security.
+
+.SH CONTACTS
+.TP
+mail
+.UR email.html
+click here
+.UE
+.TP
+telegram
+@pvlabs
+
+.SH DEVICES
+thinkpad x230, pixel 3a, macbook air m3, iphone 14 pro.
+
+.SH KEYS
+.nf
+age: age1xsmj00a47qsuul4lw8sfsyqqve9rtxy4h72q0md3cajplj9cr46qtg2q3u
+.fi
+.nf
+ssh: curl https://iwakura.page/ssh@keys
+.fi
+.nf
+minisign: curl https://iwakura.page/minisign1.pub
+minisign (trezor): curl https://iwakura.page/minisign2.pub
+.fi
+.SH SEE ALSO
+man(1), plan9(7), nixos(8), 9front(7), 
+.UR changelog.html
+changelog(7),
+.UE
+.UR https://text.iwakura.page
+notes(7),
+.UE
+.UR https://git.iwakura.page
+git(1)
+.UE
+.UR irc.html
+catgirl(1)
+.UE
+.UR ssh.html
+ssh(1)
+.UE
+
+.PP
+i believe the internet should remain simple.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/irc.7	Thu Jan 22 19:36:58 2026 +0300
@@ -0,0 +1,14 @@
+.TH "IRC" 7 "2026" "unixfriends" "Miscellaneous Information"
+.SH NAME
+irc \- Internet Relay Chat
+.SH DESCRIPTION
+here is a link to my IRC server, sometimes im online sometimes im not
+.nf
+chat.iwakura.page
+.fi
+
+.SH NOTES
+one rule - dont be a dick
+
+.SH SEE ALSO
+.Xr ssh 1
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/makefile	Thu Jan 22 19:36:58 2026 +0300
@@ -0,0 +1,39 @@
+DIST=	dist
+
+.PHONY: all clean
+
+all: $(DIST)/ssh.html $(DIST)/irc.html $(DIST)/index.html $(DIST)/email.html $(DIST)/style.css $(DIST)/scheme.css $(DIST)/changelog.html
+
+$(DIST):
+	mkdir -p $(DIST)
+
+$(DIST)/index.html: index.1 style.css $(DIST)
+	cp index.1 $(DIST)/index.1
+	mandoc -Thtml -Ostyle=style.css index.1 > $@
+
+$(DIST)/email.html: email.7 style.css $(DIST)
+	mandoc -Thtml -Ostyle=style.css email.7 > $@
+	cp email.7 $(DIST)/email.7
+	cp "ssh@keys" $(DIST)/
+	cp minisign*.pub $(DIST)
+
+$(DIST)/changelog.html: changelog.7 style.css $(DIST)
+	mandoc -Thtml -Ostyle=style.css changelog.7 > $@
+	cp changelog.7 $(DIST)/changelog.7
+
+$(DIST)/irc.html: irc.7 style.css $(DIST)
+	mandoc -Thtml -Ostyle=style.css irc.7 > $@
+	cp irc.7 $(DIST)/irc.7
+
+$(DIST)/ssh.html: ssh.7 style.css $(DIST)
+	mandoc -Thtml -Ostyle=style.css ssh.7 > $@
+	cp ssh.7 $(DIST)/ssh.7
+	
+$(DIST)/style.css: style.css $(DIST)
+	cp style.css $@
+
+$(DIST)/scheme.css: scheme.css $(DIST)
+	cp scheme.css $@
+
+clean:
+	rm -rf $(DIST)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/minisign1.pub	Thu Jan 22 19:36:58 2026 +0300
@@ -0,0 +1,2 @@
+untrusted comment: minisign public key 504795B4B4A0A852
+RWRSqKC0tJVHUAa+TU7d/NozuAwBnrqEnnPZREh4Ihuw0AP54g4ToyFp
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/minisign2.pub	Thu Jan 22 19:36:58 2026 +0300
@@ -0,0 +1,2 @@
+untrusted comment: identity <signify://lain@notes|ed25519>
+RWRUfLQF6H2Jgr8IvFUeY5Zx8aAsfYxOHYI72FnWk5OBGfpsQdCOkPdT
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/scheme.css	Thu Jan 22 19:36:58 2026 +0300
@@ -0,0 +1,66 @@
+/* taken from https://causal.agency/ */
+:root {
+	--ansi0: #161510;
+	--ansi1: #A32810;
+	--ansi2: #727A18;
+	--ansi3: #A37720;
+	--ansi4: #3D6266;
+	--ansi5: #7A4955;
+	--ansi6: #557A55;
+	--ansi7: #998D6B;
+	--ansi8: #4C4635;
+	--ansi9: #CC3214;
+	--ansi10: #8E991E;
+	--ansi11: #CC9528;
+	--ansi12: #4C7B7F;
+	--ansi13: #995B6B;
+	--ansi14: #6B996B;
+	--ansi15: #CCBC8E;
+	--ansi16: #14130E;
+	--ansi17: #B7A980;
+	--ansi18: #CCBC8E;
+	--ansi19: #A34110;
+	--ansi20: #7A7155;
+}
+.fg0 { color: var(--ansi0); }
+.bg0 { background-color: var(--ansi0); }
+.fg1 { color: var(--ansi1); }
+.bg1 { background-color: var(--ansi1); }
+.fg2 { color: var(--ansi2); }
+.bg2 { background-color: var(--ansi2); }
+.fg3 { color: var(--ansi3); }
+.bg3 { background-color: var(--ansi3); }
+.fg4 { color: var(--ansi4); }
+.bg4 { background-color: var(--ansi4); }
+.fg5 { color: var(--ansi5); }
+.bg5 { background-color: var(--ansi5); }
+.fg6 { color: var(--ansi6); }
+.bg6 { background-color: var(--ansi6); }
+.fg7 { color: var(--ansi7); }
+.bg7 { background-color: var(--ansi7); }
+.fg8 { color: var(--ansi8); }
+.bg8 { background-color: var(--ansi8); }
+.fg9 { color: var(--ansi9); }
+.bg9 { background-color: var(--ansi9); }
+.fg10 { color: var(--ansi10); }
+.bg10 { background-color: var(--ansi10); }
+.fg11 { color: var(--ansi11); }
+.bg11 { background-color: var(--ansi11); }
+.fg12 { color: var(--ansi12); }
+.bg12 { background-color: var(--ansi12); }
+.fg13 { color: var(--ansi13); }
+.bg13 { background-color: var(--ansi13); }
+.fg14 { color: var(--ansi14); }
+.bg14 { background-color: var(--ansi14); }
+.fg15 { color: var(--ansi15); }
+.bg15 { background-color: var(--ansi15); }
+.fg16 { color: var(--ansi16); }
+.bg16 { background-color: var(--ansi16); }
+.fg17 { color: var(--ansi17); }
+.bg17 { background-color: var(--ansi17); }
+.fg18 { color: var(--ansi18); }
+.bg18 { background-color: var(--ansi18); }
+.fg19 { color: var(--ansi19); }
+.bg19 { background-color: var(--ansi19); }
+.fg20 { color: var(--ansi20); }
+.bg20 { background-color: var(--ansi20); }
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ssh.7	Thu Jan 22 19:36:58 2026 +0300
@@ -0,0 +1,22 @@
+.TH "SSH" 7 "2026" "unixfriends" "Miscellaneous Information"
+.SH NAME
+irc \- Internet Relay Chat
+.SH DESCRIPTION
+here is a link to my torus and 
+.UR https://git.causal.agency/play
+"play" 
+.UE
+server
+.nf
+ssh torus@ssh.iwakura.page
+.fi
+or
+.nf
+ssh play@ssh.iwakura.page
+.fi
+
+.SH NOTES
+one rule - dont be a dick
+
+.SH SEE ALSO
+.Xr ssh 1
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ssh@keys	Thu Jan 22 19:36:58 2026 +0300
@@ -0,0 +1,2 @@
+ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINZKEd84TD0Nz7b7oeeKMvch1no/3dHm43uXBFo4uIll lain@Lains-MacBook-Air
+ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBBEv42WCiA40Ir1FJ6i/DZFJNScBwawJrrLfrouqlTk5E1hIyGPsMfsMXuXnDLIQQpfam4l+1Q0pnu8SfnfgIcU= <ssh://lain@notes|nist256p1>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/style.css	Thu Jan 22 19:36:58 2026 +0300
@@ -0,0 +1,29 @@
+/* styles from https://causal.agency/ */
+@import url("scheme.css");
+
+table.head, table.foot { width: 100%; }
+td.head-rtitle, td.foot-os { text-align: right; }
+td.head-vol { text-align: center; }
+div.Pp { margin: 1ex 0ex; }
+div.Nd, div.Bf, div.Op { display: inline; }
+span.Pa, span.Ad { font-style: italic; }
+span.Ms { font-weight: bold; }
+dl.Bl-diag > dt { font-weight: bold; }
+code.Nm, code.Fl, code.Cm, code.Ic, code.In, code.Fd, code.Fn,
+code.Cd { font-weight: bold; font-family: inherit; }
+
+div.head, div.foot { display: flex; justify-content: space-between; }
+.head-ltitle, .foot-date { flex: 1; }
+.head-vol { flex: 0 1 auto; text-align: center; }
+.head-rtitle, .foot-os { flex: 1; text-align: right; }
+
+html { font-family: monospace; line-height: 1.25em; }
+body { max-width: 80ch; margin: 1em auto; padding: 0 1ch; }
+table { border-collapse: collapse; }
+table.Nm code.Nm { padding-right: 1ch; }
+table.foot { margin-top: 1em; }
+
+html { background-color: var(--ansi16); color: var(--ansi17); }
+a { color: var(--ansi4); }
+a:visited { color: var(--ansi5); }
+a.permalink { color: var(--ansi3); text-decoration: none; }

mercurial