Remove redundant CSS classes
This commit is contained in:
parent
beb73eecd2
commit
da2a8c8b98
274
about.html
274
about.html
@ -5,7 +5,7 @@
|
||||
<!-- Copyright 2022 Jake Winters -->
|
||||
<!-- SPDX-License-Identifier: BSD-3-Clause -->
|
||||
|
||||
<!-- Version: 5.1.1.98 -->
|
||||
<!-- Version: 5.2.0.99 -->
|
||||
|
||||
|
||||
<html>
|
||||
@ -31,54 +31,54 @@
|
||||
<h1>About</h1>
|
||||
<section id="toc">
|
||||
<!-- Table of contents -->
|
||||
<h2 id="toc"><a href="#toc" class="h2">Table of Contents<a/></h2>
|
||||
<h2 id="toc"><a href="#toc">Table of Contents<a/></h2>
|
||||
<ul>
|
||||
<li><a href="#about_me" class="body-link">About Me</a></li>
|
||||
<li><a href="#licensing" class="body-link">Licensing</a></li>
|
||||
<li><a href="#about_me">About Me</a></li>
|
||||
<li><a href="#licensing">Licensing</a></li>
|
||||
<ul>
|
||||
<li><a href="#licensing-preferred" class="body-link">Preferred</a></li>
|
||||
<li><a href="#licensing-preferred">Preferred</a></li>
|
||||
<ul>
|
||||
<li><a href="#licensing-preferred-code" class="body-link">Code<a/></li>
|
||||
<li><a href="#licensing-preferred-code">Code<a/></li>
|
||||
<ul>
|
||||
<li><a href="#licensing-bsd-3-clause-clear" class="body-link">BSD 3-Clause Clear License</a></li>
|
||||
<li><a href="#licensing-mit" class="body-link">MIT License</a></li>
|
||||
<li><a href="#licensing-gpl-2.0" class="body-link">GNU General Public License v2.0</a></li>
|
||||
<li><a href="#licensing-bsd-3-clause-clear">BSD 3-Clause Clear License</a></li>
|
||||
<li><a href="#licensing-mit">MIT License</a></li>
|
||||
<li><a href="#licensing-gpl-2.0">GNU General Public License v2.0</a></li>
|
||||
</ul>
|
||||
<li><a href="#licensing-preferred-non-code" class="body-link">Non-code</a></li>
|
||||
<li><a href="#licensing-preferred-non-code">Non-code</a></li>
|
||||
<ul>
|
||||
<li><a href="#licensing-cc-by-4.0" class="body-link">Creative Commons Attribution 4.0 International</a></li>
|
||||
<li><a href="#licensing-cc-by-4.0">Creative Commons Attribution 4.0 International</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
<li><a href="#licensing-other" class="body-link">Other</a></li>
|
||||
<li><a href="#licensing-other">Other</a></li>
|
||||
<ul>
|
||||
<li><a href="#licensing-other-code" class="body-link">Code</a></li>
|
||||
<li><a href="#licensing-other-code">Code</a></li>
|
||||
<ul>
|
||||
<li><a href="#licensing-gpl-3.0" class="body-link">GNU General Public License v3.0</a></li>
|
||||
<li><a href="#licensing-gpl-3.0">GNU General Public License v3.0</a></li>
|
||||
</ul>
|
||||
<li><a href="#licensing-other-non-code" class="body-link">Non-code</a></li>
|
||||
<li><a href="#licensing-other-non-code">Non-code</a></li>
|
||||
<ul>
|
||||
<li><a href="#licensing-cc-by-nc-4.0" class="body-link">Creative Commons Attribution Non Commercial 4.0 International</a></li>
|
||||
<li><a href="#licensing-cc-by-nc-4.0">Creative Commons Attribution Non Commercial 4.0 International</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
</ul>
|
||||
<li><a href="#recommendations" class="body-link">Recommendations</a></li>
|
||||
<li><a href="#recommendations">Recommendations</a></li>
|
||||
<ul>
|
||||
<li><a href="#hardware" class="body-link">Hardware</a></li>
|
||||
<li><a href="#hardware">Hardware</a></li>
|
||||
<ul>
|
||||
<li><a href="#hdw-smartphone" class="body-link">Smartphone</a></li>
|
||||
<li><a href="#hdw-smartphone">Smartphone</a></li>
|
||||
</ul>
|
||||
<li><a href="#software" class="body-link">Software</a></li>
|
||||
<li><a href="#software">Software</a></li>
|
||||
<ul>
|
||||
<li><a href="#sfw-desktop" class="body-link">Desktop</a></li>
|
||||
<li><a href="#sfw-smartphone" class="body-link">Smartphone</a></li>
|
||||
<li><a href="#sfw-desktop">Desktop</a></li>
|
||||
<li><a href="#sfw-smartphone">Smartphone</a></li>
|
||||
</ul>
|
||||
<li><a href="#music" class="body-link">Music</a></li>
|
||||
<li><a href="#music">Music</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="about_me">
|
||||
<!-- About me -->
|
||||
<h2 id="about_me"><a href="#about_me" class="h2">About Me</a></h2>
|
||||
<h2 id="about_me"><a href="#about_me">About Me</a></h2>
|
||||
<p>I am Jake Winters, also known by my pseudonym "Inference", a cybersecurity researcher
|
||||
based in United Kingdom.<br>
|
||||
I am the founder, lead developer, and administrator, of Inferencium.<br>
|
||||
@ -96,14 +96,14 @@
|
||||
I am also a modular design advocate for the ability to securely and robustly make
|
||||
changes to hardware and software without the entire system being affected.</p>
|
||||
<p>If you want to contact me for any reason, you can use my
|
||||
<a href="https://inferencium.net/contact.html" class="body-link">contact methods</a>.</p>
|
||||
<a href="https://inferencium.net/contact.html">contact methods</a>.</p>
|
||||
<p>I run the public Systems Hardening XMPP channel dedicated to systems security and
|
||||
privacy hardening at <code>sys-hardening@muc.xmpp.inferencium.net</code>, and its
|
||||
respective off-topic channel at
|
||||
<code>sys-hardening-ot@muc.xmpp.inferencium.net</code>.</p>
|
||||
</section>
|
||||
<section id="licensing">
|
||||
<h2 id="licensing"><a href="#licensing" class="h2">Licensing</a></h2>
|
||||
<h2 id="licensing"><a href="#licensing">Licensing</a></h2>
|
||||
<p>Inferencium cares about upstreaming and sharing code, strongly preferring licenses which
|
||||
have high license compatibility in order to permit sharing code with as many other projects
|
||||
as possible; for this reason, permissive licenses are our preferred choice, while avoiding
|
||||
@ -114,18 +114,18 @@
|
||||
infeasible to do so. Our goal is to share code which has the least amount of restrictions as
|
||||
possible, to allow wider propagation of our code and allow more use cases and possibilities,
|
||||
as well as ensuring proprietary code, whenever required, is permitted to be included.</p>
|
||||
<p><a href="https://iso.org/standard/81870.html" class="body-link">ISO 5962:2021</a>
|
||||
<p><a href="https://iso.org/standard/81870.html">ISO 5962:2021</a>
|
||||
is used for licensing, in the format
|
||||
<code>SPDX-License-Identifier: <license></code>; see the
|
||||
<a href="https://spdx.org/licenses/" class="body-link">SPDX license list</a>
|
||||
<a href="https://spdx.org/licenses/">SPDX license list</a>
|
||||
for the full list of available licenses under this standard.</p>
|
||||
<h3 id="licensing-preferred"><a href="#licensing-preferred" class="h3">Preferred</a></h3>
|
||||
<h4 id="licensing-preferred-code"><a href="#licensing-preferred-code" class="h4">Code</a></h4>
|
||||
<h5 id="licensing-bsd-3-clause-clear"><a href="#licensing-bsd-3-clause-clear" class="h5">BSD 3-Clause Clear License</a></h5>
|
||||
<h3 id="licensing-preferred"><a href="#licensing-preferred">Preferred</a></h3>
|
||||
<h4 id="licensing-preferred-code"><a href="#licensing-preferred-code">Code</a></h4>
|
||||
<h5 id="licensing-bsd-3-clause-clear"><a href="#licensing-bsd-3-clause-clear">BSD 3-Clause Clear License</a></h5>
|
||||
<code>SPDX-License-Identifier: BSD-3-Clause-Clear</code>
|
||||
<p>Type: Permissive</p>
|
||||
<br>
|
||||
<p><a href="https://spdx.org/licenses/BSD-3-Clause-Clear.html" class="body-link">BSD 3-Clause Clear License</a>
|
||||
<p><a href="https://spdx.org/licenses/BSD-3-Clause-Clear.html">BSD 3-Clause Clear License</a>
|
||||
is a highly permissive
|
||||
license which allows content licensed under it to be
|
||||
used in any way, whether in source or binary form, and
|
||||
@ -136,7 +136,7 @@
|
||||
and/or its contributors may not be used to endorse or
|
||||
promote products derived from the original project.<br>
|
||||
BSD 3-Clause Clear License is a derivative of
|
||||
<a href="https://spdx.org/licenses/BSD-3-Clause.html" class="body-link">BSD 3-Clause "New" or "Revised" License</a>,
|
||||
<a href="https://spdx.org/licenses/BSD-3-Clause.html">BSD 3-Clause "New" or "Revised" License</a>,
|
||||
which adds
|
||||
an explicit statement clarifying that patent rights are
|
||||
not granted by the license alone, and must be granted
|
||||
@ -147,11 +147,11 @@
|
||||
in regards to patents applied to code using the BSD
|
||||
3-Clause "New" or "Revised" License.</p>
|
||||
<br>
|
||||
<h5 id="licensing-mit"><a href="#licensing-mit" class="h5">MIT License</a></h5>
|
||||
<h5 id="licensing-mit"><a href="#licensing-mit">MIT License</a></h5>
|
||||
<code>SPDX-License-Identifier: MIT</code>
|
||||
<p>Type: Permissive</p>
|
||||
<br>
|
||||
<p><a href="https://spdx.org/licenses/MIT.html" class="body-link">MIT License</a>
|
||||
<p><a href="https://spdx.org/licenses/MIT.html">MIT License</a>
|
||||
is a highly permissive license which
|
||||
allows content licensed under it to be used in any way,
|
||||
whether in source or binary form, and allows
|
||||
@ -165,16 +165,16 @@
|
||||
explicit statement is made alongside this license,
|
||||
increasing complexity and deviating from the standard
|
||||
license text, we prefer
|
||||
<a href="#licensing-bsd-3-clause-clear" class="body-link">BSD 3-Clause Clear License</a>;
|
||||
<a href="#licensing-bsd-3-clause-clear">BSD 3-Clause Clear License</a>;
|
||||
however, MIT License is
|
||||
a great choice when derivatives using the name of the
|
||||
original project and/or its contributors is a non-issue.</p>
|
||||
<br>
|
||||
<h5 id="licensing-gpl-2.0"><a href="#licensing-gpl-2.0" class="h5">GNU General Public License v2.0</a></h5>
|
||||
<h5 id="licensing-gpl-2.0"><a href="#licensing-gpl-2.0">GNU General Public License v2.0</a></h5>
|
||||
<code>SPDX-License-Identifier: GPL-2.0-only</code>
|
||||
<p>Type: Copyleft</p>
|
||||
<br>
|
||||
<p><a href="https://spdx.org/licenses/GPL-2.0-only.html" class="body-link">GNU General Public License v2.0</a>
|
||||
<p><a href="https://spdx.org/licenses/GPL-2.0-only.html">GNU General Public License v2.0</a>
|
||||
is a strong
|
||||
copyleft license which restricts use of content licensed
|
||||
under it by requiring all source code of the content to
|
||||
@ -191,17 +191,17 @@
|
||||
beneficial to Inferencium code; whenever this is the
|
||||
case, the GNU General Public License v2.0 will be used,
|
||||
rather than the more restrictive
|
||||
<a href="#licensing-gpl-3.0" class="body-link">GNU General Public License v3.0</a>,
|
||||
<a href="#licensing-gpl-3.0">GNU General Public License v3.0</a>,
|
||||
and relicensing
|
||||
derivatives under the GNU General Public License v3.0
|
||||
will be disallowed.</p>
|
||||
<br>
|
||||
<h4 id="licensing-preferred-non-code"><a href="#licensing-preferred-non-code" class="h4">Non-code</a></h4>
|
||||
<h5 id="licensing-cc-by-4.0"><a href="#licensing-cc-by-4.0" class="h5">Creative Commons Attribution 4.0 International</a></h5>
|
||||
<h4 id="licensing-preferred-non-code"><a href="#licensing-preferred-non-code">Non-code</a></h4>
|
||||
<h5 id="licensing-cc-by-4.0"><a href="#licensing-cc-by-4.0">Creative Commons Attribution 4.0 International</a></h5>
|
||||
<code>SPDX-License-Identifier: CC-BY-4.0</code>
|
||||
<p>Type: Permissive</p>
|
||||
<br>
|
||||
<p><a href="https://spdx.org/licenses/CC-BY-4.0.html" class="body-link">Creative Commons Attribution 4.0 International</a>
|
||||
<p><a href="https://spdx.org/licenses/CC-BY-4.0.html">Creative Commons Attribution 4.0 International</a>
|
||||
is a
|
||||
highly permissive license which allows content licensed
|
||||
under it to be used in any way, in any medium, with the
|
||||
@ -209,13 +209,13 @@
|
||||
must be kept in order to attribute the original creator
|
||||
of the licensed content.</p>
|
||||
<br>
|
||||
<h3 id="licensing-other"><a href="#licensing-other" class="h2">Other</a></h3>
|
||||
<h4 id="licensing-other-code"><a href="#licensing-other-code" class="h4">Code</a></h4>
|
||||
<h5 id="licensing-gpl-3.0"><a href="#licensing-gpl-3.0" class="h5">GNU General Public License v3.0</a></h5>
|
||||
<h3 id="licensing-other"><a href="#licensing-other">Other</a></h3>
|
||||
<h4 id="licensing-other-code"><a href="#licensing-other-code">Code</a></h4>
|
||||
<h5 id="licensing-gpl-3.0"><a href="#licensing-gpl-3.0">GNU General Public License v3.0</a></h5>
|
||||
<code>SPDX-License-Identifier: GPL-3.0-only</code>
|
||||
<p>Type: Copyleft</p>
|
||||
<br>
|
||||
<p><a href="https://spdx.org/licenses/GPL-3.0-only.html" class="body-link">GNU General Public License v3.0</a>
|
||||
<p><a href="https://spdx.org/licenses/GPL-3.0-only.html">GNU General Public License v3.0</a>
|
||||
is a strong
|
||||
copyleft license which restricts usage of content
|
||||
licensed under it by requiring all source code of the
|
||||
@ -236,12 +236,12 @@
|
||||
only on specific systems, further restricting usage of
|
||||
Inferencium code, it is avoided completely.</p>
|
||||
<br>
|
||||
<h4 id="licensing-other-non-code"><a href="#licensing-other-non-code" class="h4">Non-code</a></h4>
|
||||
<h5 id="licensing-cc-by-nc-4.0"><a href="#licensing-cc-by-nc-4.0" class="h5">Creative Commons Attribution Non Commerical 4.0 International</a></h5>
|
||||
<h4 id="licensing-other-non-code"><a href="#licensing-other-non-code">Non-code</a></h4>
|
||||
<h5 id="licensing-cc-by-nc-4.0"><a href="#licensing-cc-by-nc-4.0">Creative Commons Attribution Non Commerical 4.0 International</a></h5>
|
||||
<code>SPDX-License-Identifier: CC-BY-NC-4.0</code>
|
||||
<p>Type: Permissive non-commercial</p>
|
||||
<br>
|
||||
<p><a href="https://spdx.org/licenses/CC-BY-NC-4.0.html" class="body-link">Creative Commons Attribution Non Commercial 4.0 International</a>
|
||||
<p><a href="https://spdx.org/licenses/CC-BY-NC-4.0.html">Creative Commons Attribution Non Commercial 4.0 International</a>
|
||||
is a permissive license which allows
|
||||
content licensed under it to be used in any way, in any
|
||||
medium, with the restrictions being commercial usage is
|
||||
@ -254,47 +254,47 @@
|
||||
not want to prevent, it is avoided completely.</p>
|
||||
</section>
|
||||
<section id="recommendations">
|
||||
<h2 id="recommendations"><a href="#recommendations" class="h2">Recommendations</a></h2>
|
||||
<h2 id="recommendations"><a href="#recommendations">Recommendations</a></h2>
|
||||
<!-- Hardware I recommend as production hardware -->
|
||||
<h3 id="hardware"><a href="#hardware" class="h3">Hardware</a></h3>
|
||||
<h4 id="hdw-smartphone"><a href="#hdw-smartphone" class="h4">Smartphone</a></h4>
|
||||
<h3 id="hardware"><a href="#hardware">Hardware</a></h3>
|
||||
<h4 id="hdw-smartphone"><a href="#hdw-smartphone">Smartphone</a></h4>
|
||||
<div style="overflow-x:auto;">
|
||||
<table>
|
||||
<tr>
|
||||
<th class="table-title">Type</th>
|
||||
<th class="table-title">Hardware</th>
|
||||
<th class="table-title">Description</th>
|
||||
<th class="table-title">Source model<br>
|
||||
<th>Type</th>
|
||||
<th>Hardware</th>
|
||||
<th>Description</th>
|
||||
<th>Source model<br>
|
||||
<br>
|
||||
(License - SPDX)</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="table-main">Smartphone</td>
|
||||
<td class="table-main"><img src="asset/img/google-pixel_6.png" width="100px" height="100px"/><br>
|
||||
<tr>
|
||||
<td>Smartphone</td>
|
||||
<td><img src="asset/img/google-pixel_6.png" width="100px" height="100px"/><br>
|
||||
<br>
|
||||
Google Pixel</td>
|
||||
<td>Google Pixel devices are the best Android devices
|
||||
available on the market for
|
||||
<a class="body-link" href="https://security.googleblog.com/2021/10/pixel-6-setting-new-standard-for-mobile.html">security and privacy</a>.<br>
|
||||
<a href="https://security.googleblog.com/2021/10/pixel-6-setting-new-standard-for-mobile.html">security and privacy</a>.<br>
|
||||
<br>
|
||||
They allow locking the bootloader with a
|
||||
<a class="body-link" href="https://android.googlesource.com/platform/external/avb/+/master/README.md#pixel-2-and-later">custom Android Verified Boot (AVB) key</a>
|
||||
<a href="https://android.googlesource.com/platform/external/avb/+/master/README.md#pixel-2-and-later">custom Android Verified Boot (AVB) key</a>
|
||||
in order to
|
||||
preserve security and privacy features when installing a
|
||||
custom operating system, such as
|
||||
<a class="body-link" href="https://source.android.com/docs/security/features/verifiedboot/">verified boot</a>
|
||||
<a href="https://source.android.com/docs/security/features/verifiedboot/">verified boot</a>
|
||||
which verifies that the OS has not
|
||||
been corrupted or tampered with, and
|
||||
<a class="body-link" href="https://source.android.com/docs/security/features/verifiedboot/verified-boot#rollback-protection">rollback protection</a>
|
||||
<a href="https://source.android.com/docs/security/features/verifiedboot/verified-boot#rollback-protection">rollback protection</a>
|
||||
which prevents an adversary
|
||||
from rolling back the OS or firmware version to a
|
||||
previous version with known security vulnerabilities.<br>
|
||||
<br>
|
||||
They also include a
|
||||
<a class="body-link" href="https://developer.android.com/training/articles/keystore#HardwareSecurityModule">hardware security module</a>
|
||||
<a href="https://developer.android.com/training/articles/keystore#HardwareSecurityModule">hardware security module</a>
|
||||
(Titan M2, improving on
|
||||
the previous generation
|
||||
<a class="body-link" href="https://security.googleblog.com/2018/10/building-titan-better-security-through.html">Titan M</a>)
|
||||
<a href="https://security.googleblog.com/2018/10/building-titan-better-security-through.html">Titan M</a>)
|
||||
which is extremely resistant to both
|
||||
remote and physical attacks due to being completely
|
||||
isolated from the rest of the system, including the
|
||||
@ -302,29 +302,29 @@
|
||||
cannot be remotely compromised by requiring the side
|
||||
buttons of the device to be physically pressed for some
|
||||
sensitive operations. Titan M2 also takes the role of
|
||||
<a class="body-link" href="https://source.android.com/docs/security/best-practices/hardware#strongbox-keymaster">Android StrongBox Keymaster</a>,
|
||||
<a href="https://source.android.com/docs/security/best-practices/hardware#strongbox-keymaster">Android StrongBox Keymaster</a>,
|
||||
a
|
||||
<a class="body-link" href="https://source.android.com/docs/security/features/keystore">hardware-backed Keystore</a>
|
||||
<a href="https://source.android.com/docs/security/features/keystore">hardware-backed Keystore</a>
|
||||
containing sensitive user
|
||||
keys which are unavailable to the OS or apps running on
|
||||
it without authorisation from Titan M2 itself.
|
||||
<a class="body-link" href="https://android-developers.googleblog.com/2018/05/insider-attack-resistance.html">Insider attack resistance</a>
|
||||
<a href="https://android-developers.googleblog.com/2018/05/insider-attack-resistance.html">Insider attack resistance</a>
|
||||
ensures that Titan M2
|
||||
firmware can be flashed only if the user PIN/password is
|
||||
already known, making it impossible to backdoor the
|
||||
device without already knowing these secrets.<br>
|
||||
<br>
|
||||
Google Pixel device kernels are compiled with
|
||||
<a class="body-link" href="https://android-developers.googleblog.com/2018/10/control-flow-integrity-in-android-kernel.html">forward-edge control-flow integrity</a>
|
||||
<a href="https://android-developers.googleblog.com/2018/10/control-flow-integrity-in-android-kernel.html">forward-edge control-flow integrity</a>
|
||||
and
|
||||
<a class="body-link" href="https://security.googleblog.com/2019/10/protecting-against-code-reuse-in-linux_30.html">backward-edge control-flow integrity</a>
|
||||
<a href="https://security.googleblog.com/2019/10/protecting-against-code-reuse-in-linux_30.html">backward-edge control-flow integrity</a>
|
||||
to prevent
|
||||
code reuse attacks against the kernel. MAC address
|
||||
randomisation is
|
||||
<a class="body-link" href="https://android-developers.googleblog.com/2017/04/changes-to-device-identifiers-in.html">implemented well, along with minimal probe requests and randomised initial sequence numbers</a>.<br>
|
||||
<a href="https://android-developers.googleblog.com/2017/04/changes-to-device-identifiers-in.html">implemented well, along with minimal probe requests and randomised initial sequence numbers</a>.<br>
|
||||
<br>
|
||||
Google releases
|
||||
<a class="body-link" href="https://source.android.com/docs/security/bulletin/pixel/">guaranteed monthly security updates</a>,
|
||||
<a href="https://source.android.com/docs/security/bulletin/pixel/">guaranteed monthly security updates</a>,
|
||||
ensuring
|
||||
Google Pixel devices are up-to-date and quickly
|
||||
protected against security vulnerabilities.<br>
|
||||
@ -335,39 +335,39 @@
|
||||
ARM-based Titan M with RISC-V-based Titan M2, reducing
|
||||
trust by removing ARM from the equation. Titan M2 is
|
||||
more resiliant to attacks than Titan M, and is
|
||||
<a class="body-link" href="https://www.tuv-nederland.nl/assets/files/cerfiticaten/2022/09/nscib-cc-22-0228971-cert-final.pdf">AVA_VAN.5 certified</a>,
|
||||
<a href="https://www.tuv-nederland.nl/assets/files/cerfiticaten/2022/09/nscib-cc-22-0228971-cert-final.pdf">AVA_VAN.5 certified</a>,
|
||||
the highest level of
|
||||
vulnerability assessment. Google's in-house Tensor SoC
|
||||
includes Tensor Security Core, further improving device
|
||||
security.<br>
|
||||
<br>
|
||||
Pixel 6-series and 7-series devices are supported for a
|
||||
<a class="body-link" href="https://support.google.com/nexus/answer/4457705#zippy=%2Cpixel-and-later">minimum of 5 years from launch</a>,
|
||||
<a href="https://support.google.com/nexus/answer/4457705#zippy=%2Cpixel-and-later">minimum of 5 years from launch</a>,
|
||||
an increase from
|
||||
previous generations'
|
||||
<a class="body-link" href="https://support.google.com/nexus/answer/4457705#zippy=%2Cpixel-xl-a-a-g-and-a-g">support lifecycles of 3 years</a>.</td>
|
||||
<a href="https://support.google.com/nexus/answer/4457705#zippy=%2Cpixel-xl-a-a-g-and-a-g">support lifecycles of 3 years</a>.</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<!-- Software I recommend as production software -->
|
||||
<h3 id="software"><a href="#software" class="h3">Software</a></h3>
|
||||
<h4 id="sfw-desktop"><a href="#sfw-desktop" class="h4">Desktop</a></h4>
|
||||
<h3 id="software"><a href="#software">Software</a></h3>
|
||||
<h4 id="sfw-desktop"><a href="#sfw-desktop">Desktop</a></h4>
|
||||
<div style="overflow-x:auto;">
|
||||
<table>
|
||||
<tr>
|
||||
<th class="table-title">Type</th>
|
||||
<th class="table-title">Software</th>
|
||||
<th class="table-title">Description</th>
|
||||
<th class="table-title">Source model<br>
|
||||
<th>Type</th>
|
||||
<th>Software</th>
|
||||
<th>Description</th>
|
||||
<th>Source model<br>
|
||||
<br>
|
||||
(License - SPDX)</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="table-main">Operating system</td>
|
||||
<td class="table-main"><img src="asset/img/logo-gentoo_linux.png" width="100px" height="100px"/><br>
|
||||
<td>Operating system</td>
|
||||
<td><img src="asset/img/logo-gentoo_linux.png" width="100px" height="100px"/><br>
|
||||
<br>
|
||||
Gentoo Linux</td>
|
||||
<td><a class="body-link" href="https://www.gentoo.org/">Gentoo Linux</a>
|
||||
<td><a href="https://www.gentoo.org/">Gentoo Linux</a>
|
||||
is a highly modular, source-based,
|
||||
Linux-based operating system which allows vast
|
||||
customisation to tailor the operating system to suit
|
||||
@ -382,59 +382,59 @@
|
||||
hardening, placing performance below those aspects,
|
||||
although my system is still very performant. Some of the
|
||||
hardening I apply includes
|
||||
<a class="body-link" href="https://en.wikipedia.org/wiki/Buffer_overflow_protection">stack protection</a>,
|
||||
<a class="body-link" href="https://en.wikipedia.org/wiki/Integer_overflow">signed integer overflow wrapping</a>,
|
||||
<a href="https://en.wikipedia.org/wiki/Buffer_overflow_protection">stack protection</a>,
|
||||
<a href="https://en.wikipedia.org/wiki/Integer_overflow">signed integer overflow wrapping</a>,
|
||||
and GrapheneOS'
|
||||
<a class="body-link" href="https://github.com/GrapheneOS/hardened_malloc/">hardened_malloc</a>
|
||||
<a href="https://github.com/GrapheneOS/hardened_malloc/">hardened_malloc</a>
|
||||
memory allocator.<br>
|
||||
<br>
|
||||
You can find Inferencium's Gentoo Linux configurations
|
||||
in Inferencium's
|
||||
<a class="body-link" href="https://src.inferencium.net/Inferencium/cfg/">configuration respository</a>.</td>
|
||||
<td class="table-main">Open source<br>
|
||||
<a href="https://src.inferencium.net/Inferencium/cfg/">configuration respository</a>.</td>
|
||||
<td>Open source<br>
|
||||
<br>
|
||||
(GPL-2.0-only)</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="table-main">Web browser</td>
|
||||
<td class="table-main"><img src="asset/img/logo-chromium.png" width="100px" height="100px"/><br>
|
||||
<td>Web browser</td>
|
||||
<td><img src="asset/img/logo-chromium.png" width="100px" height="100px"/><br>
|
||||
<br>
|
||||
Chromium</td>
|
||||
<td><a class="body-link" href="https://chromium.org/">Chromium</a>
|
||||
<td><a href="https://chromium.org/">Chromium</a>
|
||||
is a highly secure web browser which is
|
||||
often ahead of other web browsers in security aspects.
|
||||
It has a dedicated security team and a very impressive
|
||||
<a class="body-link" href="https://www.chromium.org/Home/chromium-security/brag-sheet/">security brag sheet</a>.
|
||||
<a href="https://www.chromium.org/Home/chromium-security/brag-sheet/">security brag sheet</a>.
|
||||
Chromium's security features include a strong
|
||||
<a class="body-link" href="https://code.google.com/p/chromium/wiki/LinuxSandboxing">multi-layer sandbox</a>,
|
||||
<a href="https://code.google.com/p/chromium/wiki/LinuxSandboxing">multi-layer sandbox</a>,
|
||||
strong
|
||||
<a class="body-link" href="https://www.chromium.org/Home/chromium-security/site-isolation">site isolation</a>,
|
||||
<a class="body-link" href="https://www.chromium.org/Home/chromium-security/binding-integrity">Binding Integrity</a>
|
||||
<a href="https://www.chromium.org/Home/chromium-security/site-isolation">site isolation</a>,
|
||||
<a href="https://www.chromium.org/Home/chromium-security/binding-integrity">Binding Integrity</a>
|
||||
memory hardening, and
|
||||
<a class="body-link" href="https://www.chromium.org/developers/testing/control-flow-integrity/">control-flow integrity (CFI)</a>.</td>
|
||||
<td class="table-main">Open source<br>
|
||||
<a href="https://www.chromium.org/developers/testing/control-flow-integrity/">control-flow integrity (CFI)</a>.</td>
|
||||
<td>Open source<br>
|
||||
<br>
|
||||
(BSD-3-Clause)</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<h4 id="sfw-smartphone"><a href="#sfw-smartphone" class="h4">Smartphone</a></h4>
|
||||
<h4 id="sfw-smartphone"><a href="#sfw-smartphone">Smartphone</a></h4>
|
||||
<div style="overflow-x:auto;">
|
||||
<table>
|
||||
<tr>
|
||||
<th class="table-title">Type</th>
|
||||
<th class="table-title">Software</th>
|
||||
<th class="table-title">Description</th>
|
||||
<th class="table-title">Source model<br>
|
||||
<th>Type</th>
|
||||
<th>Software</th>
|
||||
<th>Description</th>
|
||||
<th>Source model<br>
|
||||
<br>
|
||||
(License - SPDX)</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="table-main">Operating system</td>
|
||||
<td class="table-main"><img src="asset/img/logo-grapheneos.png" width="100px" height="100px"/><br>
|
||||
<td>Operating system</td>
|
||||
<td><img src="asset/img/logo-grapheneos.png" width="100px" height="100px"/><br>
|
||||
<br>
|
||||
GrapheneOS</td>
|
||||
<td><a class="body-link" href="https://grapheneos.org/">GrapheneOS</a>
|
||||
<td><a href="https://grapheneos.org/">GrapheneOS</a>
|
||||
is a security-hardened,
|
||||
privacy-hardened, secure-by-default, Android-based
|
||||
operating system which implements extensive, systemic
|
||||
@ -444,21 +444,21 @@
|
||||
system information, a secure app spawning feature which
|
||||
avoids sharing address space layout and other secrets
|
||||
AOSP's default Zygote app spawning model would share,
|
||||
<a class="body-link" href="https://github.com/GrapheneOS/kernel_gs-gs101/">hardened kernel</a>,
|
||||
<a href="https://github.com/GrapheneOS/kernel_gs-gs101/">hardened kernel</a>,
|
||||
hardened memory allocator
|
||||
(<a class="body-link" href="https://github.com/GrapheneOS/hardened_malloc/">hardened_malloc</a>)
|
||||
(<a href="https://github.com/GrapheneOS/hardened_malloc/">hardened_malloc</a>)
|
||||
to protect against common memory
|
||||
corruption vulnerabilties,
|
||||
<a class="body-link" href="https://github.com/GrapheneOS/platform_bionic/">hardened Bionic standard C library</a>,
|
||||
<a class="body-link" href="https://github.com/GrapheneOS/platform_system_sepolicy/">stricter SELinux policies</a>,
|
||||
<a href="https://github.com/GrapheneOS/platform_bionic/">hardened Bionic standard C library</a>,
|
||||
<a href="https://github.com/GrapheneOS/platform_system_sepolicy/">stricter SELinux policies</a>,
|
||||
and local and remote
|
||||
hardware-backed attestation
|
||||
(<a class="body-link" href="https://attestation.app/about/">Auditor</a>)
|
||||
(<a href="https://attestation.app/about/">Auditor</a>)
|
||||
to ensure the OS has not been corrupted or
|
||||
tampered with.<br>
|
||||
<br>
|
||||
GrapheneOS only supports
|
||||
<a class="body-link" href="https://grapheneos.org/faq#device-support">high security and well-supported devices</a>
|
||||
<a href="https://grapheneos.org/faq#device-support">high security and well-supported devices</a>
|
||||
which
|
||||
receive full support from their manufacturers, including
|
||||
firmware updates, long support lifecycles, secure
|
||||
@ -466,16 +466,16 @@
|
||||
<br>
|
||||
For an extensive list of features GrapheneOS provides,
|
||||
visit its
|
||||
<a class="body-link" href="https://grapheneos.org/features/">official features list</a>
|
||||
<a href="https://grapheneos.org/features/">official features list</a>
|
||||
which provides extensive
|
||||
documentation.</td>
|
||||
<td class="table-main">Open source<br>
|
||||
<td>Open source<br>
|
||||
<br>
|
||||
(MIT)</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="table-main">Web browser</td>
|
||||
<td class="table-main"><img src="asset/img/logo-vanadium.png" width="100px" height="100px"/><br>
|
||||
<td>Web browser</td>
|
||||
<td><img src="asset/img/logo-vanadium.png" width="100px" height="100px"/><br>
|
||||
<br>
|
||||
Vanadium</td>
|
||||
<td>Vanadium is a security-hardened, privacy-hardened
|
||||
@ -484,38 +484,38 @@
|
||||
defenses to the already very secure Chromium web
|
||||
browser. Its hardening alongside Chromium's base
|
||||
security features includes
|
||||
<a class="body-link" href="https://github.com/GrapheneOS/Vanadium/blob/13/patches/0081-Implement-UI-for-JIT-site-settings.patch">disabling JavaScript just-in-time (JIT) compilation by default</a>,
|
||||
<a class="body-link" href="https://github.com/GrapheneOS/Vanadium/blob/13/patches/0051-stub-out-the-battery-status-API.patch">stubbing out the battery status API to prevent abuse of it</a>,
|
||||
<a href="https://github.com/GrapheneOS/Vanadium/blob/13/patches/0081-Implement-UI-for-JIT-site-settings.patch">disabling JavaScript just-in-time (JIT) compilation by default</a>,
|
||||
<a href="https://github.com/GrapheneOS/Vanadium/blob/13/patches/0051-stub-out-the-battery-status-API.patch">stubbing out the battery status API to prevent abuse of it</a>,
|
||||
and
|
||||
<a class="body-link" href="https://github.com/GrapheneOS/Vanadium/blob/13/patches/0084-Toggle-for-navigating-external-URL-in-incognito.patch">always-on Incognito mode as an option</a>.<br>
|
||||
<a href="https://github.com/GrapheneOS/Vanadium/blob/13/patches/0084-Toggle-for-navigating-external-URL-in-incognito.patch">always-on Incognito mode as an option</a>.<br>
|
||||
<br>
|
||||
Vanadium's source code, including its Chromium patchset,
|
||||
can be found in its
|
||||
<a class="body-link" href="https://github.com/GrapheneOS/Vanadium/">official repository</a>.</td>
|
||||
<td class="table-main">Open source<br>
|
||||
<a href="https://github.com/GrapheneOS/Vanadium/">official repository</a>.</td>
|
||||
<td>Open source<br>
|
||||
<br>
|
||||
(GPL-2.0-only)</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="table-main">Messenger</td>
|
||||
<td class="table-main"><img src="asset/img/logo-molly.png" width="100px" height="100px"><br>
|
||||
<td>Messenger</td>
|
||||
<td><img src="asset/img/logo-molly.png" width="100px" height="100px"><br>
|
||||
<br>
|
||||
Molly</td>
|
||||
<td><a class="body-link" href="https://molly.im/">Molly</a>
|
||||
<td><a href="https://molly.im/">Molly</a>
|
||||
is a security-hardened, privacy-hardened
|
||||
<a class="body-link" href="https://signal.org/">Signal</a>
|
||||
<a href="https://signal.org/">Signal</a>
|
||||
client which hardens Signal by using a
|
||||
variety of
|
||||
<a class="body-link" href="https://github.com/mollyim/mollyim-android#features">unique features</a>,
|
||||
<a href="https://github.com/mollyim/mollyim-android#features">unique features</a>,
|
||||
allowing
|
||||
<a class="body-link" href="https://github.com/mollyim/mollyim-android/wiki/Data-Encryption-At-Rest">locking the database when not in use</a>,
|
||||
<a href="https://github.com/mollyim/mollyim-android/wiki/Data-Encryption-At-Rest">locking the database when not in use</a>,
|
||||
and
|
||||
<a class="body-link" href="https://github.com/mollyim/mollyim-android/blob/a81ff7d120adc9d427be17239107343146bad704/app/src/main/java/org/thoughtcrime/securesms/crypto/MasterSecretUtil.java#L91">utilising Android StrongBox</a>
|
||||
<a href="https://github.com/mollyim/mollyim-android/blob/a81ff7d120adc9d427be17239107343146bad704/app/src/main/java/org/thoughtcrime/securesms/crypto/MasterSecretUtil.java#L91">utilising Android StrongBox</a>
|
||||
to protect user keys
|
||||
using the device's hardware security module.<br>
|
||||
<br>
|
||||
Molly is available in
|
||||
<a class="body-link" href="https://github.com/mollyim/mollyim-android#free-and-open-source">2 flavours</a>:<br>
|
||||
<a href="https://github.com/mollyim/mollyim-android#free-and-open-source">2 flavours</a>:<br>
|
||||
<ul>
|
||||
<li>Molly, which includes the same
|
||||
proprietary Google code as Signal to
|
||||
@ -526,21 +526,21 @@
|
||||
entirely open-source client.</li>
|
||||
</ul>
|
||||
</td>
|
||||
<td class="table-main">Open source<br>
|
||||
<td>Open source<br>
|
||||
<br>
|
||||
(GPL-3.0-only)</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="table-main">Messenger</td>
|
||||
<td class="table-main"><img src="asset/img/logo-conversations.png" width="100px" height="100px"><br>
|
||||
<td>Messenger</td>
|
||||
<td><img src="asset/img/logo-conversations.png" width="100px" height="100px"><br>
|
||||
<br>
|
||||
Conversations</td>
|
||||
<td><a class="body-link" href="https://conversations.im/">Conversations</a>
|
||||
<td><a href="https://conversations.im/">Conversations</a>
|
||||
is a well-designed Android
|
||||
<a class="body-link" href="https://xmpp.org/">XMPP</a>
|
||||
<a href="https://xmpp.org/">XMPP</a>
|
||||
client which serves as the de facto XMPP
|
||||
reference client and has great usability.</td>
|
||||
<td class="table-main">Open source<br>
|
||||
<td>Open source<br>
|
||||
<br>
|
||||
(GPL-3.0-only)</td>
|
||||
</tr>
|
||||
@ -548,9 +548,9 @@
|
||||
</div>
|
||||
</section>
|
||||
<section id="music">
|
||||
<h3 id="music"><a href="#music" class="h3">Music</a></h3>
|
||||
<h3 id="music"><a href="#music">Music</a></h3>
|
||||
<p>For a curated list of music I enjoy, visit my
|
||||
<a href="music.html" class="body-link">music page</a>.</p>
|
||||
<a href="music.html">music page</a>.</p>
|
||||
</section>
|
||||
</body>
|
||||
</html>
|
||||
|
12
blog.html
12
blog.html
@ -5,7 +5,7 @@
|
||||
<!-- Copyright 2022 Jake Winters -->
|
||||
<!-- SPDX-License-Identifier: BSD-3-Clause -->
|
||||
|
||||
<!-- Version: 3.1.0.29 -->
|
||||
<!-- Version: 3.2.0.30 -->
|
||||
|
||||
|
||||
<html>
|
||||
@ -31,24 +31,24 @@
|
||||
<h1>Blog</h1>
|
||||
<section id="toc">
|
||||
<!-- Table of contents -->
|
||||
<h2 id="toc"><a href="#toc" class="h2">Table of Contents<a/></h2>
|
||||
<h2 id="toc"><a href="#toc">Table of Contents</a></h2>
|
||||
<!-- Blog posts in descending order from most recent to least recent -->
|
||||
<ul>
|
||||
<li><b>2022-12-20</b></li>
|
||||
<ul>
|
||||
<li><a href="blog/the_chromium_monopoly.html" class="body-link">#3 - The Chromium Monopoly</a></li>
|
||||
<li><a href="blog/the_chromium_monopoly.html">#3 - The Chromium Monopoly</a></li>
|
||||
</ul>
|
||||
<li><b>2022-06-30</b></li>
|
||||
<ul>
|
||||
<li><a href="blog/untrusted_the_issue_with_decentralisation.html" class="body-link">#2 - Untrusted: The Issue with Decentralisation</a></li>
|
||||
<li><a href="blog/untrusted_the_issue_with_decentralisation.html">#2 - Untrusted: The Issue with Decentralisation</a></li>
|
||||
</ul>
|
||||
<li><b>2022-01-29</b></li>
|
||||
<ul>
|
||||
<li><a href="blog/systemd_insecurity.html" class="body-link">#1 - systemd Insecurity</a></li>
|
||||
<li><a href="blog/systemd_insecurity.html">#1 - systemd Insecurity</a></li>
|
||||
</ul>
|
||||
<li><b>2022-01-27</b></li>
|
||||
<ul>
|
||||
<li><a href="blog/foss_is_working_against_itself.html" class="body-link">#0 - FOSS is Working Against Itself</a></li>
|
||||
<li><a href="blog/foss_is_working_against_itself.html">#0 - FOSS is Working Against Itself</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
</section>
|
||||
|
@ -5,7 +5,7 @@
|
||||
<!-- Copyright 2023 Jake Winters -->
|
||||
<!-- SPDX-License-Identifier: BSD-3-Clause -->
|
||||
|
||||
<!-- Version: 1.3.0.14 -->
|
||||
<!-- Version: 1.4.0.15 -->
|
||||
|
||||
|
||||
<html>
|
||||
@ -31,13 +31,13 @@
|
||||
<h1>Changelog</h1>
|
||||
<section id="toc">
|
||||
<!-- Table of contents -->
|
||||
<h2 id="toc"><a href="#toc" class="h2">Table of Contents<a/></h2>
|
||||
<h2 id="toc"><a href="#toc">Table of Contents<a/></h2>
|
||||
<!-- Changelog in alphabetical order -->
|
||||
<ul>
|
||||
<li><a href="changelog/inf_kernel.html" class="body-link">Inferencium Kernel</a></li>
|
||||
<li><a href="changelog/firmware-aa000-0.html" class="body-link">Firmware - aa000-0</a></li>
|
||||
<li><a href="changelog/firmware-xa000-0.html" class="body-link">Firmware - xa000-0</a></li>
|
||||
<li><a href="changelog/firmware-xb000-0.html" class="body-link">Firmware - xb000-0</a></li>
|
||||
<li><a href="changelog/inf_kernel.html">Inferencium Kernel</a></li>
|
||||
<li><a href="changelog/firmware-aa000-0.html">Firmware - aa000-0</a></li>
|
||||
<li><a href="changelog/firmware-xa000-0.html">Firmware - xa000-0</a></li>
|
||||
<li><a href="changelog/firmware-xb000-0.html">Firmware - xb000-0</a></li>
|
||||
</ul>
|
||||
</section>
|
||||
</body>
|
||||
|
26
contact.html
26
contact.html
@ -5,7 +5,7 @@
|
||||
<!-- Copyright 2022 Jake Winters -->
|
||||
<!-- SPDX-License-Identifier: BSD-3-Clause -->
|
||||
|
||||
<!-- Version: 5.4.1.49 -->
|
||||
<!-- Version: 5.5.0.50 -->
|
||||
|
||||
|
||||
<html>
|
||||
@ -31,19 +31,19 @@
|
||||
<h1>Contact</h1>
|
||||
<section id="toc">
|
||||
<!-- Table of contents -->
|
||||
<h2 id="toc"><a href="#toc" class="h2">Table of Contents<a/></h2>
|
||||
<h2 id="toc"><a href="#toc">Table of Contents<a/></h2>
|
||||
<ul>
|
||||
<li><a href="#notes" class="body-link">Notes</a></li>
|
||||
<li><a href="#e2ee" class="body-link">End-to-end encrypted contact methods</a></li>
|
||||
<li><a href="#notes">Notes</a></li>
|
||||
<li><a href="#e2ee">End-to-end encrypted contact methods</a></li>
|
||||
<ul>
|
||||
<li><a href="#e2ee-pref" class="body-link">Preferred</a></li>
|
||||
<li><a href="#e2ee-metadata" class="body-link">Metadata-free</a></li>
|
||||
<li><a href="#e2ee-pref">Preferred</a></li>
|
||||
<li><a href="#e2ee-metadata">Metadata-free</a></li>
|
||||
</ul>
|
||||
<!--<li><a href="#non-private" class="body-link">Non-private Contact Methods</a></li>-->
|
||||
</ul>
|
||||
</section>
|
||||
<section id="notes">
|
||||
<h2 id="notes"><a href="#notes" class="h2">Notes</a></h2>
|
||||
<h2 id="notes"><a href="#notes">Notes</a></h2>
|
||||
<ul>
|
||||
<li>I have phased out usage of obsolete, insecure PGP for all contact
|
||||
methods</li>
|
||||
@ -51,16 +51,16 @@
|
||||
</ul>
|
||||
</section>
|
||||
<section id="e2ee">
|
||||
<h2 id="e2ee"><a href="#e2ee" class="h2">End-to-end Encrypted Contact Methods</a></h2>
|
||||
<h2 id="e2ee"><a href="#e2ee">End-to-end Encrypted Contact Methods</a></h2>
|
||||
<!-- Place end-to-end encrypted contact methods here -->
|
||||
<!-- Contacts should be encouraged to use these contact methods -->
|
||||
<h3 id="e2ee-pref"><a href="#e2ee-pref" class="h3">Preferred</a></h3>
|
||||
<h3 id="e2ee-pref"><a href="#e2ee-pref">Preferred</a></h3>
|
||||
<p>Whenever possible, use the following contact methods; they allow verification
|
||||
to mitigate man-in-the-middle attacks, have high security, and reasonable
|
||||
privacy.<br>
|
||||
<br>
|
||||
<p><strong>Use the
|
||||
<a href="key.html" class="body-link">keys</a> for each contact method to verify my devices.</strong><br>
|
||||
<a href="key.html">keys</a> for each contact method to verify my devices.</strong><br>
|
||||
Note: Verification does not verify a person, only their devices, and can be
|
||||
defeated via coercion or other force.</p>
|
||||
<p><img src="asset/img/logo-signal.png" class="logo-small" width="40px" height="40px"/> Signal<br>
|
||||
@ -69,13 +69,13 @@
|
||||
<p><img src="asset/img/logo-xmpp.png" class="logo-small" width="40px" height="40px"/> XMPP<br>
|
||||
<br>
|
||||
inference@inferencium.net (Main) -
|
||||
(<a href="key.html#xmpp-inferencium" class="body-link">Key</a>)<br>
|
||||
(<a href="key.html#xmpp-inferencium">Key</a>)<br>
|
||||
<br>
|
||||
inference@notyour.chat (Backup) -
|
||||
(<a href="key.html#xmpp-notyourchat" class="body-link">Key</a>)</p>
|
||||
(<a href="key.html#xmpp-notyourchat">Key</a>)</p>
|
||||
<!-- Place metadata-free contact methods here -->
|
||||
<!-- Clarify that preferred methods should be used whenever possible -->
|
||||
<h3 id="e2ee-metadata"><a href="#e2ee-metadata" class="h3">Metadata-free</a></h3>
|
||||
<h3 id="e2ee-metadata"><a href="#e2ee-metadata">Metadata-free</a></h3>
|
||||
<p>If metadata leakage is an issue for you, you can use the following contact methods.<br>
|
||||
<br>
|
||||
Note: These services do not have verification functionality and will be treated
|
||||
|
125
inf.css
125
inf.css
@ -3,7 +3,7 @@
|
||||
/* Copyright 2022 Jake Winters */
|
||||
/* SPDX-License-Identifier: BSD-3-Clause */
|
||||
|
||||
/* Version: 10.2.1.41 */
|
||||
/* Version: 10.3.0.42 */
|
||||
|
||||
|
||||
/* Body */
|
||||
@ -17,24 +17,6 @@ body {
|
||||
background-color: #262626;
|
||||
}
|
||||
|
||||
.body-link {
|
||||
font-family: Roboto, sans-serif;
|
||||
font-size: 17px;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.body-link:link {
|
||||
color: #5dade2;
|
||||
}
|
||||
|
||||
.body-link:visited {
|
||||
color: #bb8fce;
|
||||
}
|
||||
|
||||
.body-link:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
|
||||
/* Section */
|
||||
section {
|
||||
@ -42,8 +24,8 @@ section {
|
||||
}
|
||||
|
||||
|
||||
/* Heading 1 */
|
||||
h1, .h1 {
|
||||
/* Headings */
|
||||
h1 {
|
||||
font-family: Roboto, sans-serif;
|
||||
font-size: 24px;
|
||||
text-align: center;
|
||||
@ -52,45 +34,35 @@ h1, .h1 {
|
||||
padding-bottom: 40px;
|
||||
}
|
||||
|
||||
|
||||
/* Heading 2 */
|
||||
h2, .h2 {
|
||||
h2 {
|
||||
font-family: Roboto, sans-serif;
|
||||
font-size: 22px;
|
||||
line-height: 130%;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
|
||||
/* Heading 3 */
|
||||
h3, .h3 {
|
||||
h3 {
|
||||
font-family: Roboto, sans-serif;
|
||||
font-size: 20px;
|
||||
line-height: 130%;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
|
||||
/* Heading 4 */
|
||||
h4, .h4 {
|
||||
h4 {
|
||||
font-family: Roboto, sans-serif;
|
||||
font-size: 18px;
|
||||
line-height: 130%;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
|
||||
/* Heading 5 */
|
||||
h5, .h5 {
|
||||
h5 {
|
||||
font-family: Roboto, sans-serif;
|
||||
font-size: 16px;
|
||||
line-height: 130%;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
|
||||
/* Heading 6 */
|
||||
h6, .h6 {
|
||||
h6 {
|
||||
font-family: Roboto, sans-serif;
|
||||
font-size: 16px;
|
||||
line-height: 130%;
|
||||
@ -105,12 +77,14 @@ p {
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
|
||||
/* Blockquote */
|
||||
blockquote {
|
||||
font-size: 16px;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
|
||||
/* Code */
|
||||
code {
|
||||
font-size: 15px;
|
||||
@ -123,13 +97,66 @@ code {
|
||||
}
|
||||
|
||||
|
||||
/* Link */
|
||||
/* Links */
|
||||
a {
|
||||
font-family: Roboto, sans-serif;
|
||||
color: #000000;
|
||||
font-size: 17px;
|
||||
color: #5dade2;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a:visited {
|
||||
color: #bb8fce;
|
||||
}
|
||||
|
||||
a:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
h1 a, h1 a:visited {
|
||||
font-family: Roboto, sans-serif;
|
||||
font-size: 24px;
|
||||
text-align: center;
|
||||
line-height: 130%;
|
||||
color: #ffffff;
|
||||
padding-bottom: 40px;
|
||||
}
|
||||
|
||||
h2 a, h2 a:visited {
|
||||
font-family: Roboto, sans-serif;
|
||||
font-size: 22px;
|
||||
line-height: 130%;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
h3 a, h3 a:visited {
|
||||
font-family: Roboto, sans-serif;
|
||||
font-size: 20px;
|
||||
line-height: 130%;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
h4 a, h4 a:visited {
|
||||
font-family: Roboto, sans-serif;
|
||||
font-size: 18px;
|
||||
line-height: 130%;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
h5 a, h5 a:visited {
|
||||
font-family: Roboto, sans-serif;
|
||||
font-size: 16px;
|
||||
line-height: 130%;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
h6 a, h6 a:visited {
|
||||
font-family: Roboto, sans-serif;
|
||||
font-size: 16px;
|
||||
line-height: 130%;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
|
||||
/* Lists */
|
||||
ul {
|
||||
@ -164,7 +191,7 @@ table, th, td {
|
||||
overflow-x: auto;
|
||||
}
|
||||
|
||||
.table-title {
|
||||
th {
|
||||
font-family: Roboto, sans-serif;
|
||||
font-size: 17px;
|
||||
color: #ffffff;
|
||||
@ -172,7 +199,7 @@ table, th, td {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.table-main {
|
||||
td {
|
||||
font-family: Roboto, sans-serif;
|
||||
font-size: 17px;
|
||||
color: #ffffff;
|
||||
@ -194,22 +221,24 @@ table, th, td {
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
.sidebar div {
|
||||
padding: 8px;
|
||||
font-family: Roboto, sans-serif;
|
||||
font-size: 22px;
|
||||
display: block;
|
||||
z-index: 100;
|
||||
.logo-small {
|
||||
transform: translate(0px, 13px);
|
||||
}
|
||||
|
||||
.title {
|
||||
padding: 8px;
|
||||
font-family: Roboto, sans-serif;
|
||||
font-size: 28px;
|
||||
color: #000000;
|
||||
}
|
||||
|
||||
.logo-small {
|
||||
transform: translate(0px, 13px);
|
||||
.sidebar div, .sidebar div a, .sidebar div a:visited {
|
||||
padding: 6px;
|
||||
font-family: Roboto, sans-serif;
|
||||
font-size: 22px;
|
||||
color: #000000;
|
||||
display: block;
|
||||
z-index: 100;
|
||||
}
|
||||
|
||||
|
||||
|
42
key.html
42
key.html
@ -5,7 +5,7 @@
|
||||
<!-- Copyright 2022 Jake Winters -->
|
||||
<!-- SPDX-License-Identifier: BSD-3-Clause -->
|
||||
|
||||
<!-- Version: 4.5.0.31 -->
|
||||
<!-- Version: 4.6.0.32 -->
|
||||
|
||||
|
||||
<html>
|
||||
@ -31,71 +31,71 @@
|
||||
<h1>Key</h1>
|
||||
<section id="toc">
|
||||
<!-- Table of contents -->
|
||||
<h2 id="toc"><a href="#toc" class="h2">Table of Contents<a/></h2>
|
||||
<h2 id="toc"><a href="#toc">Table of Contents<a/></h2>
|
||||
<ul>
|
||||
<li><a href="#notes" class="body-link">Notes</a></li>
|
||||
<li><a href="#e2ee" class="body-link">End-to-end Encrypted Contact Methods</a></li>
|
||||
<li><a href="#notes">Notes</a></li>
|
||||
<li><a href="#e2ee">End-to-end Encrypted Contact Methods</a></li>
|
||||
<ul>
|
||||
<li><a href="#xmpp" class="body-link">XMPP</a></li>
|
||||
<li><a href="#xmpp">XMPP</a></li>
|
||||
<ul>
|
||||
<li><a href="#xmpp-inferencium" class="body-link">inference@inferencium.net (Main)</a></li>
|
||||
<li><a href="#xmpp-notyourchat" class="body-link">inference@notyour.chat (Backup)</a></li>
|
||||
<li><a href="#xmpp-inferencium">inference@inferencium.net (Main)</a></li>
|
||||
<li><a href="#xmpp-notyourchat">inference@notyour.chat (Backup)</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
<li><a href="#file_git_signing" class="body-link">File/Git Signing</a></li>
|
||||
<li><a href="#file_git_signing">File/Git Signing</a></li>
|
||||
<ul>
|
||||
<li><a href="#ssh" class="body-link">SSH</a></li>
|
||||
<li><a href="#ssh">SSH</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="notes">
|
||||
<h2 id="notes"><a href="#notes" class="h2">Notes</a></h2>
|
||||
<h2 id="notes"><a href="#notes">Notes</a></h2>
|
||||
<ul>
|
||||
<li>You can also find my keys on
|
||||
<a href="https://github.com/inferenceus/key" class="body-link">GitHub</a>
|
||||
<a href="https://github.com/inferenceus/key">GitHub</a>
|
||||
and
|
||||
<a href="https://codeberg.org/inference/key" class="body-link">Codeberg</a>
|
||||
<a href="https://codeberg.org/inference/key">Codeberg</a>
|
||||
in order to check for discrepancies between the keys.</li>
|
||||
<li>Verification does not verify a person, only their devices, and can
|
||||
be defeated via coercion or other force.</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="e2ee">
|
||||
<h2 id="e2ee"><a href="#e2ee" class="h2">End-to-end Encrypted Contact Methods</a></h2>
|
||||
<h3 id="xmpp"><a href="#xmpp" class="h3"><img class="logo-small" src="asset/img/logo-xmpp.png" width="40px" height="40px"/> XMPP</a></h3>
|
||||
<h2 id="e2ee"><a href="#e2ee">End-to-end Encrypted Contact Methods</a></h2>
|
||||
<h3 id="xmpp"><a href="#xmpp"><img class="logo-small" src="asset/img/logo-xmpp.png" width="40px" height="40px"/> XMPP</a></h3>
|
||||
<p class="update_date">Updated: 2023-01-13 (UTC+00:00)</p>
|
||||
<br>
|
||||
<p>Whenever possible, open the links to pin the fingerprints directly
|
||||
from this webpage. If that is not possible, manually verify the
|
||||
fingerprints.</p>
|
||||
<br>
|
||||
<h4 id="xmpp-inferencium"><a href="#xmpp-inferencium" class="h4">inference@inferencium.net (Main)</a></h3>
|
||||
<h4 id="xmpp-inferencium"><a href="#xmpp-inferencium">inference@inferencium.net (Main)</a></h3>
|
||||
<h5>Key #0</h5>
|
||||
<code>
|
||||
1bd03c6a 5e011655 2fafd697 da4fce70 63de5a83 a264a34a fcce78fe 6b06820c
|
||||
</code>
|
||||
<br>
|
||||
<br>
|
||||
<a href="xmpp:inference@inferencium.net?omemo-sid-1586888206=1bd03c6a5e0116552fafd697da4fce7063de5a83a264a34afcce78fe6b06820c" class="body-link">xmpp:inference@inferencium.net?omemo-sid-1586888206=1bd03c6a5e0116552fafd697da4fce7063de5a83a264a34afcce78fe6b06820c</a>
|
||||
<a href="xmpp:inference@inferencium.net?omemo-sid-1586888206=1bd03c6a5e0116552fafd697da4fce7063de5a83a264a34afcce78fe6b06820c">xmpp:inference@inferencium.net?omemo-sid-1586888206=1bd03c6a5e0116552fafd697da4fce7063de5a83a264a34afcce78fe6b06820c</a>
|
||||
<h5>Key #1</h5>
|
||||
<code>
|
||||
bf2aa069 2bb90210 aee7e17c e3d90127 cfe3502a 6450f8ab e76dbbb0 e5864b7a
|
||||
</code>
|
||||
<br>
|
||||
<br>
|
||||
<a href="xmpp:inference@inferencium.net?omemo-sid-336821633=bf2aa0692bb90210aee7e17ce3d90127cfe3502a6450f8abe76dbbb0e5864b7a" class="body-link">xmpp:inference@inferencium.net?omemo-sid-336821633=bf2aa0692bb90210aee7e17ce3d90127cfe3502a6450f8abe76dbbb0e5864b7a</a>
|
||||
<h4 id="xmpp-notyourchat"><a href="#xmpp-notyourchat" class="h4">inference@notyour.chat (Backup)</a></h4>
|
||||
<a href="xmpp:inference@inferencium.net?omemo-sid-336821633=bf2aa0692bb90210aee7e17ce3d90127cfe3502a6450f8abe76dbbb0e5864b7a">xmpp:inference@inferencium.net?omemo-sid-336821633=bf2aa0692bb90210aee7e17ce3d90127cfe3502a6450f8abe76dbbb0e5864b7a</a>
|
||||
<h4 id="xmpp-notyourchat"><a href="#xmpp-notyourchat">inference@notyour.chat (Backup)</a></h4>
|
||||
<h5>Key #0</h5>
|
||||
<code>
|
||||
d4c59ac0 7f65434d bc331f4c 54169ff1 872bef91 8326f819 970c87b1 c5f06c24
|
||||
</code>
|
||||
<br>
|
||||
<br>
|
||||
<a href="xmpp:inference@notyour.chat?omemo-sid-1931255406=d4c59ac07f65434dbc331f4c54169ff1872bef918326f819970c87b1c5f06c24" class="body-link">xmpp:inference@notyour.chat?omemo-sid-1931255406=d4c59ac07f65434dbc331f4c54169ff1872bef918326f819970c87b1c5f06c24</a>
|
||||
<a href="xmpp:inference@notyour.chat?omemo-sid-1931255406=d4c59ac07f65434dbc331f4c54169ff1872bef918326f819970c87b1c5f06c24">xmpp:inference@notyour.chat?omemo-sid-1931255406=d4c59ac07f65434dbc331f4c54169ff1872bef918326f819970c87b1c5f06c24</a>
|
||||
</section>
|
||||
<section id="file_git_signing">
|
||||
<h2 id="file_git_signing"><a href="#file_git_signing" class="h2">File/Git Signing</a></h2>
|
||||
<h3 id="ssh"><a href="#ssh" class="h3">SSH</a></h3>
|
||||
<h2 id="file_git_signing"><a href="#file_git_signing">File/Git Signing</a></h2>
|
||||
<h3 id="ssh"><a href="#ssh">SSH</a></h3>
|
||||
<p class="update_date">Updated: 2023-07-27 (UTC+00:00)</p>
|
||||
<p>Each SSH key is signed by the previous key, allowing verification of
|
||||
the chain of keys, and root of trust.</p>
|
||||
|
26
music.html
26
music.html
@ -5,7 +5,7 @@
|
||||
<!-- Copyright 2023 Jake Winters -->
|
||||
<!-- SPDX-License-Identifier: BSD-3-Clause -->
|
||||
|
||||
<!-- Version: 1.1.0.30 -->
|
||||
<!-- Version: 1.2.0.31 -->
|
||||
|
||||
|
||||
<html>
|
||||
@ -39,18 +39,18 @@
|
||||
an official source is unavailable). It is your responsibility to comply with any local
|
||||
laws when following these links and/or consuming any media found in this list.</p>
|
||||
<ul>
|
||||
<li><a href="https://youtube.com/watch?v=XtptYWXLdvo" class="body-link">Essenger - After Dark</a></li>
|
||||
<li><a href="https://youtube.com/watch?v=qRJVcQsqieU" class="body-link">Essenger - Tenebrous</a></li>
|
||||
<li><a href="https://youtube.com/watch?v=uNj3vZQLNWM" class="body-link">Essenger - Tenebrous (Irons Remix)</a></li>
|
||||
<li><a href="https://youtube.com/watch?v=8bCaXe5fIB4" class="body-link">Geoxor - I Like You</a></li>
|
||||
<li><a href="https://youtube.com/watch?v=v9_9tYQd7yg" class="body-link">Geoxor & SVRGE - DEAD</a></li>
|
||||
<li><a href="https://youtube.com/watch?v=ktf_HPqTOXM" class="body-link">Haloweak - C.O.R.E</a></li>
|
||||
<li><a href="https://youtube.com/watch?v=q2DBeby7ni8" class="body-link">Haloweak - NARWHAL</a></li>
|
||||
<li><a href="https://youtube.com/watch?v=RHu804DrBZc" class="body-link">Haloweak - 傀儡 曲</a></li>
|
||||
<li><a href="https://youtube.com/watch?v=Wm8vcFn0bgY" class="body-link">Infected Mushroom - Kazabubu</a></li>
|
||||
<li><a href="https://youtube.com/watch?v=q2zcxPhOPd0" class="body-link">SVRGE - Animosity</a></li>
|
||||
<li><a href="https://youtube.com/watch?v=ucoTKQpXrhI" class="body-link">SVRGE - Eternal</a></li>
|
||||
<li><a href="https://youtube.com/watch?v=YwzIbcuaFUo" class="body-link">SVRGE - Nocturnal</a></li>
|
||||
<li><a href="https://youtube.com/watch?v=XtptYWXLdvo">Essenger - After Dark</a></li>
|
||||
<li><a href="https://youtube.com/watch?v=qRJVcQsqieU">Essenger - Tenebrous</a></li>
|
||||
<li><a href="https://youtube.com/watch?v=uNj3vZQLNWM">Essenger - Tenebrous (Irons Remix)</a></li>
|
||||
<li><a href="https://youtube.com/watch?v=8bCaXe5fIB4">Geoxor - I Like You</a></li>
|
||||
<li><a href="https://youtube.com/watch?v=v9_9tYQd7yg">Geoxor & SVRGE - DEAD</a></li>
|
||||
<li><a href="https://youtube.com/watch?v=ktf_HPqTOXM">Haloweak - C.O.R.E</a></li>
|
||||
<li><a href="https://youtube.com/watch?v=q2DBeby7ni8">Haloweak - NARWHAL</a></li>
|
||||
<li><a href="https://youtube.com/watch?v=RHu804DrBZc">Haloweak - 傀儡 曲</a></li>
|
||||
<li><a href="https://youtube.com/watch?v=Wm8vcFn0bgY">Infected Mushroom - Kazabubu</a></li>
|
||||
<li><a href="https://youtube.com/watch?v=q2zcxPhOPd0">SVRGE - Animosity</a></li>
|
||||
<li><a href="https://youtube.com/watch?v=ucoTKQpXrhI">SVRGE - Eternal</a></li>
|
||||
<li><a href="https://youtube.com/watch?v=YwzIbcuaFUo">SVRGE - Nocturnal</a></li>
|
||||
</ul>
|
||||
</section>
|
||||
</body>
|
||||
|
@ -5,7 +5,7 @@
|
||||
<!-- Copyright 2023 Jake Winters -->
|
||||
<!-- SPDX-License-Identifier: BSD-3-Clause -->
|
||||
|
||||
<!-- Version: 0.2.0.4 -->
|
||||
<!-- Version: 0.3.0.5 -->
|
||||
|
||||
|
||||
<html>
|
||||
@ -34,6 +34,6 @@
|
||||
This redirect is valid until 2024-01-01; please update your bookmarks and/or Inferencium Git
|
||||
repository URIs before this date.<br>
|
||||
<br>
|
||||
<a href="https://src.inferencium.net/" class="body-link">Continue to src.inferencium.net</a></p>
|
||||
<a href="https://src.inferencium.net/">Continue to src.inferencium.net</a></p>
|
||||
</body>
|
||||
</html>
|
||||
|
34
source.html
34
source.html
@ -5,7 +5,7 @@
|
||||
<!-- Copyright 2022 Jake Winters -->
|
||||
<!-- SPDX-License-Identifier: BSD-3-Clause -->
|
||||
|
||||
<!-- Version: 3.2.0.36 -->
|
||||
<!-- Version: 3.3.0.37 -->
|
||||
|
||||
|
||||
<html>
|
||||
@ -31,33 +31,33 @@
|
||||
<h1>Source</h1>
|
||||
<section id="toc">
|
||||
<!-- Table of contents -->
|
||||
<h2 id="toc"><a href="#toc" class="h2">Table of Contents<a/></h2>
|
||||
<h2 id="toc"><a href="#toc">Table of Contents<a/></h2>
|
||||
<ul>
|
||||
<li><a href="#src-inferencium" class="body-link">Inferencium Source Code Repositories</a></li>
|
||||
<li><a href="#src-personal" class="body-link">My Personal Source Code Repositories</a></li>
|
||||
<li><a href="#src-inferencium">Inferencium Source Code Repositories</a></li>
|
||||
<li><a href="#src-personal">My Personal Source Code Repositories</a></li>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="src-inferencium">
|
||||
<!-- Place Inferencium source code repositories here -->
|
||||
<h2 id="src-inferencium"><a href="#src-inferencium" class="h2">Inferencium Source Code Repositories</a></h2>
|
||||
<h2 id="src-inferencium"><a href="#src-inferencium">Inferencium Source Code Repositories</a></h2>
|
||||
<ul>
|
||||
<li><a href="https://src.inferencium.net/Inferencium/cfg/" class="body-link">cfg</a> - Configuration files</li>
|
||||
<li><a href="https://src.inferencium.net/Inferencium/doc/" class="body-link">doc</a> - Documentation</li>
|
||||
<li><a href="https://src.inferencium.net/Inferencium/inf_kernel/" class="body-link">inf_kernel</a> - Inferencium Kernel</li>
|
||||
<li><a href="https://src.inferencium.net/Inferencium/firmware-aa000-0/" class="body-link">firmware-aa000-0</a> - System aa000-0 firmware</li>
|
||||
<li><a href="https://src.inferencium.net/Inferencium/firmware-xa000-0/" class="body-link">firmware-xa000-0</a> - System xa000-0 firmware</li>
|
||||
<li><a href="https://src.inferencium.net/Inferencium/firmware-xb000-0/" class="body-link">firmware-xb000-0</a> - System xb000-0 firmware</li>
|
||||
<li><a href="https://src.inferencium.net/Inferencium/mmd/" class="body-link">mmd</a> - Gentoo Multimedia ebuild repository</li>
|
||||
<li><a href="https://src.inferencium.net/Inferencium/scr/" class="body-link">scr</a> - Script files</li>
|
||||
<li><a href="https://src.inferencium.net/Inferencium/sys/" class="body-link">sys</a> - Gentoo System ebuild repository</li>
|
||||
<li><a href="https://src.inferencium.net/Inferencium/website/" class="body-link">website</a> - Website</li>
|
||||
<li><a href="https://src.inferencium.net/Inferencium/cfg/">cfg</a> - Configuration files</li>
|
||||
<li><a href="https://src.inferencium.net/Inferencium/doc/">doc</a> - Documentation</li>
|
||||
<li><a href="https://src.inferencium.net/Inferencium/inf_kernel/">inf_kernel</a> - Inferencium Kernel</li>
|
||||
<li><a href="https://src.inferencium.net/Inferencium/firmware-aa000-0/">firmware-aa000-0</a> - System aa000-0 firmware</li>
|
||||
<li><a href="https://src.inferencium.net/Inferencium/firmware-xa000-0/">firmware-xa000-0</a> - System xa000-0 firmware</li>
|
||||
<li><a href="https://src.inferencium.net/Inferencium/firmware-xb000-0/">firmware-xb000-0</a> - System xb000-0 firmware</li>
|
||||
<li><a href="https://src.inferencium.net/Inferencium/mmd/">mmd</a> - Gentoo Multimedia ebuild repository</li>
|
||||
<li><a href="https://src.inferencium.net/Inferencium/scr/">scr</a> - Script files</li>
|
||||
<li><a href="https://src.inferencium.net/Inferencium/sys/">sys</a> - Gentoo System ebuild repository</li>
|
||||
<li><a href="https://src.inferencium.net/Inferencium/website/">website</a> - Website</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="src-personal">
|
||||
<!-- Place personal source code repositories here -->
|
||||
<h2 id="src-personal"><a href="#src-personal" class="h2">My Personal Source Code Repositories</a></h2>
|
||||
<h2 id="src-personal"><a href="#src-personal">My Personal Source Code Repositories</a></h2>
|
||||
<ul>
|
||||
<li><a href="https://src.inferencium.net/inference/graphenechan/" class="body-link">graphenechan</a> - Graphene-chan (GrapheneOS unofficial mascot)</li>
|
||||
<li><a href="https://src.inferencium.net/inference/graphenechan/">graphenechan</a> - Graphene-chan (GrapheneOS unofficial mascot)</li>
|
||||
</ul>
|
||||
</section>
|
||||
</body>
|
||||
|
Loading…
x
Reference in New Issue
Block a user