mirror of
https://github.com/ivabus/website
synced 2024-11-22 08:25:12 +03:00
Compare commits
3 commits
082594252a
...
0db1da5763
Author | SHA1 | Date | |
---|---|---|---|
|
0db1da5763 | ||
4aa094956c | |||
afbcb70963 |
21 changed files with 328 additions and 244 deletions
2
Gemfile
2
Gemfile
|
@ -6,9 +6,7 @@ gem 'jekyll-seo-tag'
|
||||||
gem 'kramdown-parser-gfm'
|
gem 'kramdown-parser-gfm'
|
||||||
gem 'jekyll-watch'
|
gem 'jekyll-watch'
|
||||||
gem 'webrick'
|
gem 'webrick'
|
||||||
gem 'jekyll-toc'
|
|
||||||
gem 'jekyll-feed'
|
gem 'jekyll-feed'
|
||||||
gem 'jekyll-minifier'
|
gem 'jekyll-minifier'
|
||||||
gem 'rouge'
|
gem 'rouge'
|
||||||
gem 'jekyll-paginate'
|
|
||||||
gem 'execjs'
|
gem 'execjs'
|
52
Gemfile.lock
52
Gemfile.lock
|
@ -1,24 +1,27 @@
|
||||||
GEM
|
GEM
|
||||||
remote: https://rubygems.org/
|
remote: https://rubygems.org/
|
||||||
specs:
|
specs:
|
||||||
addressable (2.8.5)
|
addressable (2.8.7)
|
||||||
public_suffix (>= 2.0.2, < 6.0)
|
public_suffix (>= 2.0.2, < 7.0)
|
||||||
|
bigdecimal (3.1.8)
|
||||||
colorator (1.1.0)
|
colorator (1.1.0)
|
||||||
concurrent-ruby (1.2.2)
|
concurrent-ruby (1.3.3)
|
||||||
cssminify2 (2.0.1)
|
cssminify2 (2.0.1)
|
||||||
em-websocket (0.5.3)
|
em-websocket (0.5.3)
|
||||||
eventmachine (>= 0.12.9)
|
eventmachine (>= 0.12.9)
|
||||||
http_parser.rb (~> 0)
|
http_parser.rb (~> 0)
|
||||||
eventmachine (1.2.7)
|
eventmachine (1.2.7)
|
||||||
execjs (2.9.1)
|
execjs (2.9.1)
|
||||||
ffi (1.16.3)
|
ffi (1.17.0)
|
||||||
forwardable-extended (2.6.0)
|
forwardable-extended (2.6.0)
|
||||||
google-protobuf (3.25.1)
|
google-protobuf (4.27.2)
|
||||||
|
bigdecimal
|
||||||
|
rake (>= 13)
|
||||||
htmlcompressor (0.4.0)
|
htmlcompressor (0.4.0)
|
||||||
http_parser.rb (0.8.0)
|
http_parser.rb (0.8.0)
|
||||||
i18n (1.14.1)
|
i18n (1.14.5)
|
||||||
concurrent-ruby (~> 1.0)
|
concurrent-ruby (~> 1.0)
|
||||||
jekyll (4.3.2)
|
jekyll (4.3.3)
|
||||||
addressable (~> 2.4)
|
addressable (~> 2.4)
|
||||||
colorator (~> 1.0)
|
colorator (~> 1.0)
|
||||||
em-websocket (~> 0.5)
|
em-websocket (~> 0.5)
|
||||||
|
@ -42,19 +45,15 @@ GEM
|
||||||
jekyll (>= 3.5)
|
jekyll (>= 3.5)
|
||||||
json-minify (~> 0.0.3)
|
json-minify (~> 0.0.3)
|
||||||
uglifier (~> 4.1)
|
uglifier (~> 4.1)
|
||||||
jekyll-paginate (1.1.0)
|
|
||||||
jekyll-sass-converter (3.0.0)
|
jekyll-sass-converter (3.0.0)
|
||||||
sass-embedded (~> 1.54)
|
sass-embedded (~> 1.54)
|
||||||
jekyll-seo-tag (2.8.0)
|
jekyll-seo-tag (2.8.0)
|
||||||
jekyll (>= 3.8, < 5.0)
|
jekyll (>= 3.8, < 5.0)
|
||||||
jekyll-sitemap (1.4.0)
|
jekyll-sitemap (1.4.0)
|
||||||
jekyll (>= 3.7, < 5.0)
|
jekyll (>= 3.7, < 5.0)
|
||||||
jekyll-toc (0.18.0)
|
|
||||||
jekyll (>= 3.9)
|
|
||||||
nokogiri (~> 1.12)
|
|
||||||
jekyll-watch (2.2.1)
|
jekyll-watch (2.2.1)
|
||||||
listen (~> 3.0)
|
listen (~> 3.0)
|
||||||
json (2.7.1)
|
json (2.7.2)
|
||||||
json-minify (0.0.3)
|
json-minify (0.0.3)
|
||||||
json (> 0)
|
json (> 0)
|
||||||
kramdown (2.4.0)
|
kramdown (2.4.0)
|
||||||
|
@ -62,28 +61,25 @@ GEM
|
||||||
kramdown-parser-gfm (1.1.0)
|
kramdown-parser-gfm (1.1.0)
|
||||||
kramdown (~> 2.0)
|
kramdown (~> 2.0)
|
||||||
liquid (4.0.4)
|
liquid (4.0.4)
|
||||||
listen (3.8.0)
|
listen (3.9.0)
|
||||||
rb-fsevent (~> 0.10, >= 0.10.3)
|
rb-fsevent (~> 0.10, >= 0.10.3)
|
||||||
rb-inotify (~> 0.9, >= 0.9.10)
|
rb-inotify (~> 0.9, >= 0.9.10)
|
||||||
mercenary (0.4.0)
|
mercenary (0.4.0)
|
||||||
mini_portile2 (2.8.5)
|
|
||||||
nokogiri (1.15.5)
|
|
||||||
mini_portile2 (~> 2.8.2)
|
|
||||||
racc (~> 1.4)
|
|
||||||
pathutil (0.16.2)
|
pathutil (0.16.2)
|
||||||
forwardable-extended (~> 2.6)
|
forwardable-extended (~> 2.6)
|
||||||
public_suffix (5.0.4)
|
public_suffix (6.0.0)
|
||||||
racc (1.7.3)
|
rake (13.2.1)
|
||||||
rake (13.1.0)
|
|
||||||
rb-fsevent (0.11.2)
|
rb-fsevent (0.11.2)
|
||||||
rb-inotify (0.10.1)
|
rb-inotify (0.11.1)
|
||||||
ffi (~> 1.0)
|
ffi (~> 1.0)
|
||||||
rexml (3.2.6)
|
rexml (3.3.1)
|
||||||
rouge (4.2.0)
|
strscan
|
||||||
|
rouge (4.3.0)
|
||||||
safe_yaml (1.0.5)
|
safe_yaml (1.0.5)
|
||||||
sass-embedded (1.69.5)
|
sass-embedded (1.77.5)
|
||||||
google-protobuf (~> 3.23)
|
google-protobuf (>= 3.25, < 5.0)
|
||||||
rake (>= 13.0.0)
|
rake (>= 13)
|
||||||
|
strscan (3.1.0)
|
||||||
terminal-table (3.0.2)
|
terminal-table (3.0.2)
|
||||||
unicode-display_width (>= 1.1.1, < 3)
|
unicode-display_width (>= 1.1.1, < 3)
|
||||||
uglifier (4.2.0)
|
uglifier (4.2.0)
|
||||||
|
@ -99,14 +95,12 @@ DEPENDENCIES
|
||||||
jekyll
|
jekyll
|
||||||
jekyll-feed
|
jekyll-feed
|
||||||
jekyll-minifier
|
jekyll-minifier
|
||||||
jekyll-paginate
|
|
||||||
jekyll-seo-tag
|
jekyll-seo-tag
|
||||||
jekyll-sitemap
|
jekyll-sitemap
|
||||||
jekyll-toc
|
|
||||||
jekyll-watch
|
jekyll-watch
|
||||||
kramdown-parser-gfm
|
kramdown-parser-gfm
|
||||||
rouge
|
rouge
|
||||||
webrick
|
webrick
|
||||||
|
|
||||||
BUNDLED WITH
|
BUNDLED WITH
|
||||||
2.4.22
|
2.4.20
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
name: "Ivan Bushchik"
|
name: "ivabus"
|
||||||
description: ivabus's site/blog
|
description: ivabus's site/blog
|
||||||
url: https://ivabus.dev
|
url: https://ivabus.dev
|
||||||
lang: en
|
lang: en
|
||||||
|
@ -15,11 +15,9 @@ exclude: ['README.md', 'Gemfile.lock', 'Gemfile', 'Rakefile', 'LICENSE', 'shell.
|
||||||
plugins:
|
plugins:
|
||||||
- jekyll-seo-tag
|
- jekyll-seo-tag
|
||||||
- jekyll-sitemap
|
- jekyll-sitemap
|
||||||
- jekyll-toc
|
|
||||||
- jekyll-feed
|
- jekyll-feed
|
||||||
- jekyll-minifier
|
- jekyll-minifier
|
||||||
- rouge
|
- rouge
|
||||||
- jekyll-paginate
|
|
||||||
|
|
||||||
markdown: kramdown
|
markdown: kramdown
|
||||||
|
|
||||||
|
@ -27,7 +25,6 @@ social:
|
||||||
name: Ivan Bushchik
|
name: Ivan Bushchik
|
||||||
links:
|
links:
|
||||||
- https://github.com/ivabus
|
- https://github.com/ivabus
|
||||||
- https://social.treehouse.systems/@ivabus
|
|
||||||
- https://vk.com/ivabus
|
- https://vk.com/ivabus
|
||||||
|
|
||||||
kramdown:
|
kramdown:
|
||||||
|
@ -40,8 +37,5 @@ kramdown:
|
||||||
line_numbers: false
|
line_numbers: false
|
||||||
wrap: true
|
wrap: true
|
||||||
|
|
||||||
paginate: 5
|
|
||||||
paginate_path: "/blog/page:num/"
|
|
||||||
|
|
||||||
jekyll-minifier:
|
jekyll-minifier:
|
||||||
preserve_line_breaks: true
|
preserve_line_breaks: true
|
||||||
|
|
5
_includes/webring.html
Normal file
5
_includes/webring.html
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
<div class="webring">
|
||||||
|
<a href="//otomir23.me/webring/14/prev"><</a>
|
||||||
|
<a href="//otomir23.me/webring">webring</a>
|
||||||
|
<a href="//otomir23.me/webring/14/next">></a>
|
||||||
|
</div>
|
|
@ -2,4 +2,4 @@
|
||||||
layout: default
|
layout: default
|
||||||
---
|
---
|
||||||
|
|
||||||
{{ content | toc }}
|
{{ content }}
|
|
@ -1,19 +1,24 @@
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html lang="en">
|
<html lang="en">
|
||||||
|
|
||||||
<head>
|
<head>
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<link rel="preload" href="/assets/fonts/JetBrainsMono-VariableFont_wght.ttf" as="font" type="font/ttf" crossorigin="anonymous">
|
<link rel="preload" href="/assets/fonts/JetBrainsMono-VariableFont_wght.ttf" as="font" type="font/ttf"
|
||||||
|
crossorigin="anonymous">
|
||||||
<meta name="viewport" content="width=device-width">
|
<meta name="viewport" content="width=device-width">
|
||||||
|
<link rel="preload" href="/assets/images/background.webp" as="image">
|
||||||
<link href="/assets/css/style.css" rel="stylesheet">
|
<link href="/assets/css/style.css" rel="stylesheet">
|
||||||
{% seo title=false %}
|
{% seo title=false %}
|
||||||
<title>{% if page.name != "index.md" %}{{page.title}} | {% endif %}{{site.name}}</title>
|
<title>{% if page.name != "index.md" %}{{page.title}} | {% endif %}{{site.name}}</title>
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<header id="header">
|
|
||||||
<a href="/"><h1>{{ site.name }}</h1></a>
|
|
||||||
</header>
|
|
||||||
<div id="page">
|
<div id="page">
|
||||||
|
<header id="header_top">
|
||||||
|
<a href="/">
|
||||||
|
<h1>{{ site.name }}</h1>
|
||||||
|
</a>
|
||||||
|
</header>
|
||||||
<div id="sidebar">
|
<div id="sidebar">
|
||||||
<nav class="menu">
|
<nav class="menu">
|
||||||
<ul class="menu">
|
<ul class="menu">
|
||||||
|
@ -22,40 +27,57 @@
|
||||||
<li class="menu"><a href="/about.html">About</a></li>
|
<li class="menu"><a href="/about.html">About</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
</div>
|
|
||||||
<div id="content">
|
|
||||||
{{ content }}
|
|
||||||
</div>
|
|
||||||
<footer id="footer">
|
|
||||||
<details>
|
|
||||||
<summary>GPG key info</summary>
|
|
||||||
<br>
|
|
||||||
<p>
|
|
||||||
<a href="/key.asc">key.asc</a><br>
|
|
||||||
Key ID (sign): <code>2F16FBF3262E090C</code><br>
|
|
||||||
Key ID (encrypt): <code>75D13F197C64C9B2</code><br>
|
|
||||||
Key ID (sign) (revoked): <code>9F6DDABE11A2674D</code><br>
|
|
||||||
Key ID (encrypt) (revoked): <code>F2D682FB55D16001</code><br>
|
|
||||||
Fingerprint: <code>5F8E 8C32 261C 2CA7 D680 792D D146 2CE6 C2FF 77CE</code></p>
|
|
||||||
<ul>
|
|
||||||
<li><a href="http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x5f8e8c32261c2ca7d680792dd1462ce6c2ff77ce">keyserver.ubuntu.com</a></li>
|
|
||||||
<li><a href="https://keys.openpgp.org/vks/v1/by-fingerprint/5F8E8C32261C2CA7D680792DD1462CE6C2FF77CE">keys.openpgp.org</a></li>
|
|
||||||
</ul>
|
|
||||||
<details>
|
|
||||||
<summary>Revoked key <code>3E4E9C7D66E44BF7</code></summary>
|
|
||||||
Key ID: <code>3E4E9C7D66E44BF7</code><br>
|
|
||||||
Fingerprint: <code>77F2 CF96 4D0A 9F5B A3DE 3D31 3E4E 9C7D 66E4 4BF7</code>
|
|
||||||
<ul>
|
|
||||||
<li><a href="http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x77f2cf964d0a9f5ba3de3d313e4e9c7d66e44bf7">keyserver.ubuntu.com</a></li>
|
|
||||||
</ul>
|
|
||||||
</details>
|
|
||||||
</details>
|
|
||||||
<br>
|
|
||||||
<p class="copyright">All content copyright Ivan Bushchik. Powered by <a href="https://github.com/ivabus/nixos">NixOS</a> and <a href="http://jekyllrb.com">Jekyll</a></p>
|
|
||||||
<!-- commit_id may be filled during build -->
|
|
||||||
{% if site.commit_id %}<p class="copyright">Built from <a href="https://github.com/ivabus/website/commit/{{ site.commit_id }}">{{ site.commit_id | slice: 0,7 }}</a></p>{% endif %}
|
|
||||||
</footer>
|
|
||||||
|
|
||||||
</div>
|
<footer id="footer_top">
|
||||||
|
{% include webring.html %}
|
||||||
|
<details>
|
||||||
|
<summary>GPG key info</summary>
|
||||||
|
<br>
|
||||||
|
<p>
|
||||||
|
<a href="/key.asc">key.asc</a><br>
|
||||||
|
Key ID (sign): <code>2F16FBF3262E090C</code><br>
|
||||||
|
Key ID (encrypt): <code>75D13F197C64C9B2</code><br>
|
||||||
|
Fingerprint: <code>5F8E 8C32 261C 2CA7 D680 792D D146 2CE6 C2FF 77CE</code>
|
||||||
|
</p>
|
||||||
|
<br>
|
||||||
|
</details>
|
||||||
|
<p class="copyright">All content copyright Ivan Bushchik.</p>
|
||||||
|
<!-- commit_id may be filled during build -->
|
||||||
|
{% if site.commit_id %}<p class="copyright">Built from <a
|
||||||
|
href="https://github.com/ivabus/website/commit/{{ site.commit_id }}">{{ site.commit_id | slice: 0,7 }}</a>
|
||||||
|
</p>
|
||||||
|
{% endif %}
|
||||||
|
</footer>
|
||||||
|
</div>
|
||||||
|
<header id="header_bottom">
|
||||||
|
<a href="/">
|
||||||
|
<h1>{{ site.name }}</h1>
|
||||||
|
</a>
|
||||||
|
</header>
|
||||||
|
<div id="content">
|
||||||
|
{{ content }}
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<footer id="footer_bottom">
|
||||||
|
<div style="text-align: center">{% include webring.html %}</div>
|
||||||
|
<details>
|
||||||
|
<summary>GPG key info</summary>
|
||||||
|
<br>
|
||||||
|
<p>
|
||||||
|
<a href="/key.asc">key.asc</a><br>
|
||||||
|
Key ID (sign): <code>2F16FBF3262E090C</code><br>
|
||||||
|
Key ID (encrypt): <code>75D13F197C64C9B2</code><br>
|
||||||
|
Fingerprint: <code>5F8E 8C32 261C 2CA7 D680 792D D146 2CE6 C2FF 77CE</code>
|
||||||
|
</p>
|
||||||
|
<br>
|
||||||
|
</details>
|
||||||
|
<p class="copyright">All content copyright Ivan Bushchik.</p>
|
||||||
|
<!-- commit_id may be filled during build -->
|
||||||
|
{% if site.commit_id %}<p class="copyright">Built from <a
|
||||||
|
href="https://github.com/ivabus/website/commit/{{ site.commit_id }}">{{ site.commit_id | slice: 0,7 }}</a></p>
|
||||||
|
{% endif %}
|
||||||
|
</footer>
|
||||||
|
</div>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
|
||||||
|
</html>
|
|
@ -3,7 +3,6 @@ layout: post
|
||||||
summary: "I tried out NixOS this month and it was the best Linux experience I've ever had"
|
summary: "I tried out NixOS this month and it was the best Linux experience I've ever had"
|
||||||
title: "NixOS encounter"
|
title: "NixOS encounter"
|
||||||
img: /posts_media/2023-07-28-nixos-encounter/screenshot.webp
|
img: /posts_media/2023-07-28-nixos-encounter/screenshot.webp
|
||||||
toc: true
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## What is NixOS?
|
## What is NixOS?
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
layout: post
|
layout: post
|
||||||
summary: "Up to 1.8 GHz without throttling"
|
summary: "Up to 1.8 GHz without throttling"
|
||||||
title: "Overclocking StarFive VisionFive 2"
|
title: "Overclocking StarFive VisionFive 2"
|
||||||
toc: true
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# TL;DR
|
# TL;DR
|
||||||
|
@ -13,7 +12,7 @@ Apply a [patch](/posts_media/2023-10-21-overclocking-starfive-vf2/overclock_vf2.
|
||||||
|
|
||||||
StarFive VisionFive 2 is a second generation of RISC-V boards from StarFive, which is based on StarFive JH7110 SoC with 4 of SiFive's U74 cores.
|
StarFive VisionFive 2 is a second generation of RISC-V boards from StarFive, which is based on StarFive JH7110 SoC with 4 of SiFive's U74 cores.
|
||||||
|
|
||||||
The SiFive U74 max frequency in StarFive JH7110 is 1.5 GHz by default, but it can work much better, because even under load the temperature never exceeds 50ºC, so overclocking is worth it. The JH110 can be overclocked to 1.8 GHz, which will be done in this article.
|
The SiFive U74 max frequency in StarFive JH7110 is 1.5 GHz by default, but it can perform much better, because even under load the temperature never exceeds 60ºC, so overclocking is worth it. The JH110 can be overclocked to 1.8 GHz, which will be done in this article.
|
||||||
|
|
||||||
Warning: You are responsible for the safety of your board.
|
Warning: You are responsible for the safety of your board.
|
||||||
|
|
||||||
|
@ -83,7 +82,7 @@ All tests were performed out at an ambient temperature of 21ºC.
|
||||||
|
|
||||||
25-minute `stress -c 8` run. [Raw data (without heatsink) (timestamp, temp * 1000)](/posts_media/2023-10-21-overclocking-starfive-vf2/vf2_stress_data), [raw data (with heatsink)](/posts_media/2023-10-21-overclocking-starfive-vf2/vf2_stress_data_heatsink).
|
25-minute `stress -c 8` run. [Raw data (without heatsink) (timestamp, temp * 1000)](/posts_media/2023-10-21-overclocking-starfive-vf2/vf2_stress_data), [raw data (with heatsink)](/posts_media/2023-10-21-overclocking-starfive-vf2/vf2_stress_data_heatsink).
|
||||||
|
|
||||||
![Stress test graph](/posts_media/2023-10-21-overclocking-starfive-vf2/vf2_stress.jpeg)
|
![Stress test graph](/posts_media/2023-10-21-overclocking-starfive-vf2/vf2_stress.png)
|
||||||
|
|
||||||
|
|
||||||
# Known issues
|
# Known issues
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
layout: post
|
layout: post
|
||||||
summary: "This post is hosted on NixOS"
|
summary: "This post is hosted on NixOS"
|
||||||
title: "Hosting Jekyll websites on NixOS"
|
title: "Hosting Jekyll websites on NixOS"
|
||||||
toc: true
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Preamble
|
## Preamble
|
||||||
|
|
17
_projects/005-urouter-aliurl.md
Normal file
17
_projects/005-urouter-aliurl.md
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
---
|
||||||
|
layout: project
|
||||||
|
title: "urouter & aliurl"
|
||||||
|
description: "Aliaser for URLs"
|
||||||
|
project-url: "https://github.com/ivabus/urouter"
|
||||||
|
participant: false
|
||||||
|
---
|
||||||
|
|
||||||
|
[urouter](https://github.com/ivabus/urouter) is "static" URL router, that reads route list at from file once.
|
||||||
|
|
||||||
|
urouter is built on top of the [Rocket.rs](https://rocket.rs) framework.
|
||||||
|
|
||||||
|
urouter powers [iva.bz](https://iva.bz)
|
||||||
|
|
||||||
|
urouter successfully replaced [aliurl](https://github.com/ivabus/aliurl), which was a dynamic HTTP router.
|
||||||
|
|
||||||
|
[aliurl](https://github.com/ivabus/aliurl) is a "dynamic" HTTP router (with API to modify routes) that has been deprecatred and replaced by urouter.
|
|
@ -1,13 +0,0 @@
|
||||||
---
|
|
||||||
layout: project
|
|
||||||
title: "urouter"
|
|
||||||
description: "Aliaser for URLs"
|
|
||||||
project-url: "https://github.com/ivabus/urouter"
|
|
||||||
participant: false
|
|
||||||
---
|
|
||||||
|
|
||||||
[urouter](https://github.com/ivabus/urouter) is "static" URL router, that reads route list at from file once.
|
|
||||||
|
|
||||||
urouter is built on top of the [Rocket.rs](https://rocket.rs) framework.
|
|
||||||
|
|
||||||
urouter powers [iva.bz](https://iva.bz)
|
|
6
about.md
6
about.md
|
@ -5,13 +5,14 @@ title: About
|
||||||
toc: true
|
toc: true
|
||||||
---
|
---
|
||||||
|
|
||||||
|
{% include_relative abouttext.md %}
|
||||||
|
|
||||||
## Skills
|
## Skills
|
||||||
|
|
||||||
- Linux administration
|
|
||||||
- Rust
|
- Rust
|
||||||
|
- Linux administration
|
||||||
- Git
|
- Git
|
||||||
- pacman, [tea](https://tea.xyz) and (basic) RPM packaging
|
- pacman, [pkgx](https://pkgx.sh) and (basic) RPM packaging
|
||||||
- Shell scripting
|
- Shell scripting
|
||||||
|
|
||||||
## Certifications
|
## Certifications
|
||||||
|
@ -24,7 +25,6 @@ I'm usually known as `ivabus` online. Below are some of the accounts where I pub
|
||||||
|
|
||||||
- [GitHub](https://github.com/ivabus)
|
- [GitHub](https://github.com/ivabus)
|
||||||
- [Self-hosted Gitea instance (mirror of GitHub)](https://git.ivabus.dev)
|
- [Self-hosted Gitea instance (mirror of GitHub)](https://git.ivabus.dev)
|
||||||
- [Mastodon](https://social.treehouse.systems/@ivabus)
|
|
||||||
- [Linux.org.ru](https://www.linux.org.ru/people/ivabus/profile)
|
- [Linux.org.ru](https://www.linux.org.ru/people/ivabus/profile)
|
||||||
|
|
||||||
## Contact me
|
## Contact me
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
|
|
||||||
Hi, I'm Ivan Bushchik. I live in Saint Petersburg, Russia. Currently, besides learning, I'm developing small projects and administrating homelab-like environment.
|
Hi there! My name is Ivan Bushchik and I'm 17 years old. I live in Saint Petersburg, Russia and I study system programming. In addition to studying, I also develop small projects and manage my homelab environment.
|
||||||
|
|
||||||
You can find some projects that I consider something important on the page [Projects](/projects). Or, if you want to see all the projects I've worked on, you should visit my [GitHub](https://github.com/ivabus).
|
You can find some projects that I consider something important on the page [Projects](/projects). Or, if you want to see all the projects I've worked on, you should visit my [GitHub](https://github.com/ivabus).
|
|
@ -16,7 +16,7 @@ a, abbr, acronym, address, applet, article, aside, audio, big, canvas, caption,
|
||||||
|
|
||||||
body {
|
body {
|
||||||
line-height: 1;
|
line-height: 1;
|
||||||
font: 14px/1.7"JetBrains Mono", monospace
|
font: 14px/1.7"JetBrains Mono", monospace;
|
||||||
}
|
}
|
||||||
|
|
||||||
h1, h2, h3, h4, h5, h6, p, pre {
|
h1, h2, h3, h4, h5, h6, p, pre {
|
||||||
|
@ -122,7 +122,7 @@ code {
|
||||||
}
|
}
|
||||||
|
|
||||||
.highlight {
|
.highlight {
|
||||||
background-color: #073642;
|
background-color: #2b2b2b;
|
||||||
border-radius: 6px;
|
border-radius: 6px;
|
||||||
padding: 10px 5px 5px 10px;
|
padding: 10px 5px 5px 10px;
|
||||||
overflow: auto;
|
overflow: auto;
|
||||||
|
@ -221,36 +221,56 @@ blockquote, h4, h5, h6 {
|
||||||
}
|
}
|
||||||
|
|
||||||
#page {
|
#page {
|
||||||
width: 600px;
|
padding-top: 32px;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
|
||||||
|
width: 900px;
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
position: relative
|
transform: translateX(-75px);
|
||||||
}
|
}
|
||||||
|
|
||||||
#footer, #header {
|
#sidebar {
|
||||||
|
margin-right: 0;
|
||||||
|
height: fit-content;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*footer, #header {
|
||||||
width: 600px;
|
width: 600px;
|
||||||
margin: 20px auto 0
|
margin: 20px auto 0
|
||||||
|
}*/
|
||||||
|
|
||||||
|
header {
|
||||||
|
transform: rotate(-90deg) translateX(-107%);
|
||||||
|
width: 64px;
|
||||||
|
height: 32px;
|
||||||
|
flex: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
#header h1 {
|
header h1 {
|
||||||
font-size: 32px;
|
font-size: 32px;
|
||||||
margin-bottom: 4px
|
margin-bottom: 4px;
|
||||||
|
text-wrap: nowrap;
|
||||||
|
text-align: end;
|
||||||
}
|
}
|
||||||
|
|
||||||
#header h1 a, article h1 a, body {
|
header h1 a, article h1 a, body {
|
||||||
border: 0
|
border: 0
|
||||||
}
|
}
|
||||||
|
|
||||||
#footer {
|
footer {
|
||||||
margin: 10px auto 20px;
|
margin: 10px auto 20px;
|
||||||
padding-top: 10px;
|
padding-top: 5px;
|
||||||
font-size: .85em;
|
font-size: .85em;
|
||||||
border-top: 1px solid #073642
|
border-top: 1px solid #073642
|
||||||
}
|
}
|
||||||
|
|
||||||
#sidebar a {
|
#sidebar a {
|
||||||
border: 0;
|
border: 0;
|
||||||
display: inline;
|
/* padding: 0 4px;*/
|
||||||
padding: 0 4px;
|
padding: 4px;
|
||||||
font: 1.2em"JetBrains Mono", monospace
|
font: 1.2em"JetBrains Mono", monospace
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -321,19 +341,29 @@ img.center {
|
||||||
margin: 0 auto 1em
|
margin: 0 auto 1em
|
||||||
}
|
}
|
||||||
|
|
||||||
#header, #sidebar, img.center {
|
img.center {
|
||||||
text-align: center
|
text-align: center
|
||||||
}
|
}
|
||||||
|
|
||||||
#sidebar {
|
#content, #sidebar {
|
||||||
position: relative;
|
border-radius: 16px;
|
||||||
|
backdrop-filter: blur(24px);
|
||||||
|
padding: 16px;
|
||||||
|
box-shadow: 0 0 8px #eee8d5;
|
||||||
|
}
|
||||||
|
|
||||||
|
#content {
|
||||||
|
max-width: 600px;
|
||||||
|
min-width: 600px;
|
||||||
|
margin-bottom: 32px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.webring {
|
||||||
|
margin-bottom: 16px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.webring a {
|
||||||
display: inline;
|
display: inline;
|
||||||
left: 0;
|
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
width: auto;
|
|
||||||
top: 0;
|
|
||||||
margin-bottom: 20px
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.menu {
|
.menu {
|
||||||
|
@ -354,27 +384,94 @@ img.center {
|
||||||
|
|
||||||
#sidebar li {
|
#sidebar li {
|
||||||
list-style: none;
|
list-style: none;
|
||||||
display: inline
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@media all and (max-width:660px) {
|
#footer_bottom, #header_top {
|
||||||
#content, #footer, #header, #page {
|
display: none;
|
||||||
width: auto;
|
}
|
||||||
padding-left: 10.5px;
|
|
||||||
padding-right: 10.5px
|
|
||||||
|
#sidebar {
|
||||||
|
text-align: end;
|
||||||
|
/*position: relative;*/
|
||||||
|
/*display: inline;*/
|
||||||
|
margin-right: 0;
|
||||||
|
/*display: flex;*/
|
||||||
|
|
||||||
|
flex: none;
|
||||||
|
justify-content: center;
|
||||||
|
width: 150px;
|
||||||
|
/*top: 0;*/
|
||||||
|
/*margin-bottom: 20px*/
|
||||||
|
}
|
||||||
|
|
||||||
|
@media all and (max-width:1080px) {
|
||||||
|
|
||||||
|
header {
|
||||||
|
transform: none;
|
||||||
|
text-align: start;
|
||||||
|
}
|
||||||
|
|
||||||
|
#header {
|
||||||
|
text-align: start;
|
||||||
|
margin: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.menu {
|
||||||
|
display: inline;
|
||||||
|
text-align: start;
|
||||||
|
justify-self: unset;
|
||||||
|
}
|
||||||
|
|
||||||
|
#sidebar {
|
||||||
|
justify-items: center;
|
||||||
|
display: flex;
|
||||||
|
margin-top: 10px;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#header_top {
|
||||||
|
text-align: center;
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
#footer_bottom, #header_top {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
#footer_top, #header_bottom {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
#content, #header, #page, #sidebar {
|
||||||
|
transform: none;
|
||||||
|
display: block;
|
||||||
|
width: 90%;
|
||||||
|
min-width: 0;
|
||||||
|
max-width: 800px;
|
||||||
|
padding-left: 5%;
|
||||||
|
padding-right: 5%;
|
||||||
|
margin: 0 auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
#sidebar {
|
||||||
|
margin-bottom: 16px;
|
||||||
|
text-align: center;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
body, html {
|
body {
|
||||||
color: #839496
|
color: #839496;
|
||||||
}
|
min-height: 100vh;
|
||||||
|
background: url("/assets/images/background.webp"), linear-gradient(#ddd, #555);
|
||||||
body, html {
|
background-position: -10%;
|
||||||
background-color: #002a35
|
background-blend-mode: multiply;
|
||||||
|
background-repeat: repeat;
|
||||||
}
|
}
|
||||||
|
|
||||||
a:hover {
|
a:hover {
|
||||||
color: #b58900
|
color: #b58900;
|
||||||
|
transition: 0.166s;
|
||||||
}
|
}
|
||||||
|
|
||||||
h1, h2, h3, h4, h5, h6 {
|
h1, h2, h3, h4, h5, h6 {
|
||||||
|
@ -382,11 +479,17 @@ h1, h2, h3, h4, h5, h6 {
|
||||||
}
|
}
|
||||||
|
|
||||||
h1 a, h1 a:active, h1 a:visited {
|
h1 a, h1 a:active, h1 a:visited {
|
||||||
color: #cb4b16
|
color: #cb4b16;
|
||||||
|
padding: 4px;
|
||||||
|
transform: translateX(-4px);
|
||||||
|
}
|
||||||
|
|
||||||
|
#sidebar a, h1 a {
|
||||||
|
border-radius: 8px;
|
||||||
}
|
}
|
||||||
|
|
||||||
#sidebar a:hover, h1 a:hover {
|
#sidebar a:hover, h1 a:hover {
|
||||||
background-color: #002a35;
|
background-color: #464646;
|
||||||
color: #cb4b16
|
color: #cb4b16
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -398,10 +501,14 @@ article h1 a.anchor {
|
||||||
color: #b58900
|
color: #b58900
|
||||||
}
|
}
|
||||||
|
|
||||||
#footer {
|
footer {
|
||||||
border-color: transparent;
|
border-color: transparent;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.blog {
|
||||||
|
margin-top: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
/* width */
|
/* width */
|
||||||
::-webkit-scrollbar {
|
::-webkit-scrollbar {
|
||||||
width: 10px;
|
width: 10px;
|
||||||
|
@ -472,7 +579,7 @@ article h1 a.anchor {
|
||||||
|
|
||||||
.highlight .gh {
|
.highlight .gh {
|
||||||
color: #268bd2;
|
color: #268bd2;
|
||||||
background-color: #002b36;
|
background-color: #2b2b2b;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
BIN
assets/images/background.webp
Normal file
BIN
assets/images/background.webp
Normal file
Binary file not shown.
After Width: | Height: | Size: 13 KiB |
|
@ -6,7 +6,7 @@ title: "Blog"
|
||||||
<h1 style="font-size: 24px; margin-bottom: 0;">Blog</h1>
|
<h1 style="font-size: 24px; margin-bottom: 0;">Blog</h1>
|
||||||
<a href="/feed.xml" style="margin-top: 0;">RSS feed</a>
|
<a href="/feed.xml" style="margin-top: 0;">RSS feed</a>
|
||||||
<div id="blog-archives">
|
<div id="blog-archives">
|
||||||
{% for post in paginator.posts %}
|
{% for post in site.posts %}
|
||||||
<article class="post" style="margin-top: 15px;">
|
<article class="post" style="margin-top: 15px;">
|
||||||
<h2 style="font-size: 14pt; margin: 0 0 0 0;"><a href="{{ post.url }}">{{ post.title }}</a></h2>
|
<h2 style="font-size: 14pt; margin: 0 0 0 0;"><a href="{{ post.url }}">{{ post.title }}</a></h2>
|
||||||
<p class="meta"><span class="postdate">{{ post.date | date: "%b %d, %Y" }}</span></p>
|
<p class="meta"><span class="postdate">{{ post.date | date: "%b %d, %Y" }}</span></p>
|
||||||
|
@ -19,29 +19,4 @@ title: "Blog"
|
||||||
</article>
|
</article>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</div>
|
</div>
|
||||||
{% if paginator.total_pages > 1 %}
|
|
||||||
<div class="pagination" align="center">
|
|
||||||
{% if paginator.previous_page %}
|
|
||||||
<a href="{{ paginator.previous_page_path | relative_url }}">« Prev</a>
|
|
||||||
{% else %}
|
|
||||||
<span>« Prev</span>
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
{% for page in (1..paginator.total_pages) %}
|
|
||||||
{% if page == paginator.page %}
|
|
||||||
<span>{{ page }}</span>
|
|
||||||
{% elsif page == 1 %}
|
|
||||||
<a href="{{ '/blog' | relative_url }}">{{ page }}</a>
|
|
||||||
{% else %}
|
|
||||||
<a href="{{ site.paginate_path | relative_url | replace: ':num', page }}">{{ page }}</a>
|
|
||||||
{% endif %}
|
|
||||||
{% endfor %}
|
|
||||||
|
|
||||||
{% if paginator.next_page %}
|
|
||||||
<a href="{{ paginator.next_page_path | relative_url }}">Next »</a>
|
|
||||||
{% else %}
|
|
||||||
<span>Next »</span>
|
|
||||||
{% endif %}
|
|
||||||
</div>
|
|
||||||
{% endif %}
|
|
||||||
</div>
|
</div>
|
130
gemset.nix
130
gemset.nix
|
@ -5,10 +5,20 @@
|
||||||
platforms = [];
|
platforms = [];
|
||||||
source = {
|
source = {
|
||||||
remotes = ["https://rubygems.org"];
|
remotes = ["https://rubygems.org"];
|
||||||
sha256 = "05r1fwy487klqkya7vzia8hnklcxy4vr92m9dmni3prfwk6zpw33";
|
sha256 = "0cl2qpvwiffym62z991ynks7imsm87qmgxf0yfsmlwzkgi9qcaa6";
|
||||||
type = "gem";
|
type = "gem";
|
||||||
};
|
};
|
||||||
version = "2.8.5";
|
version = "2.8.7";
|
||||||
|
};
|
||||||
|
bigdecimal = {
|
||||||
|
groups = ["default"];
|
||||||
|
platforms = [];
|
||||||
|
source = {
|
||||||
|
remotes = ["https://rubygems.org"];
|
||||||
|
sha256 = "1gi7zqgmqwi5lizggs1jhc3zlwaqayy9rx2ah80sxy24bbnng558";
|
||||||
|
type = "gem";
|
||||||
|
};
|
||||||
|
version = "3.1.8";
|
||||||
};
|
};
|
||||||
colorator = {
|
colorator = {
|
||||||
groups = ["default"];
|
groups = ["default"];
|
||||||
|
@ -25,10 +35,10 @@
|
||||||
platforms = [];
|
platforms = [];
|
||||||
source = {
|
source = {
|
||||||
remotes = ["https://rubygems.org"];
|
remotes = ["https://rubygems.org"];
|
||||||
sha256 = "0krcwb6mn0iklajwngwsg850nk8k9b35dhmc2qkbdqvmifdi2y9q";
|
sha256 = "0skwdasxq7mnlcccn6aqabl7n9r3jd7k19ryzlzzip64cn4x572g";
|
||||||
type = "gem";
|
type = "gem";
|
||||||
};
|
};
|
||||||
version = "1.2.2";
|
version = "1.3.3";
|
||||||
};
|
};
|
||||||
cssminify2 = {
|
cssminify2 = {
|
||||||
groups = ["default"];
|
groups = ["default"];
|
||||||
|
@ -76,10 +86,10 @@
|
||||||
platforms = [];
|
platforms = [];
|
||||||
source = {
|
source = {
|
||||||
remotes = ["https://rubygems.org"];
|
remotes = ["https://rubygems.org"];
|
||||||
sha256 = "1yvii03hcgqj30maavddqamqy50h7y6xcn2wcyq72wn823zl4ckd";
|
sha256 = "07139870npj59jnl8vmk39ja3gdk3fb5z9vc0lf32y2h891hwqsi";
|
||||||
type = "gem";
|
type = "gem";
|
||||||
};
|
};
|
||||||
version = "1.16.3";
|
version = "1.17.0";
|
||||||
};
|
};
|
||||||
forwardable-extended = {
|
forwardable-extended = {
|
||||||
groups = ["default"];
|
groups = ["default"];
|
||||||
|
@ -92,14 +102,15 @@
|
||||||
version = "2.6.0";
|
version = "2.6.0";
|
||||||
};
|
};
|
||||||
google-protobuf = {
|
google-protobuf = {
|
||||||
|
dependencies = ["bigdecimal" "rake"];
|
||||||
groups = ["default"];
|
groups = ["default"];
|
||||||
platforms = [];
|
platforms = [];
|
||||||
source = {
|
source = {
|
||||||
remotes = ["https://rubygems.org"];
|
remotes = ["https://rubygems.org"];
|
||||||
sha256 = "18yiqq657lbqbrbdfbxfspdrkiynd0wf49l3cgdw939z36cy0h77";
|
sha256 = "0vwnr6fmxig4pkag86yzbznpxk8ii7rhjz0rrprkqvnymhhfnscz";
|
||||||
type = "gem";
|
type = "gem";
|
||||||
};
|
};
|
||||||
version = "3.25.1";
|
version = "4.27.2";
|
||||||
};
|
};
|
||||||
htmlcompressor = {
|
htmlcompressor = {
|
||||||
groups = ["default"];
|
groups = ["default"];
|
||||||
|
@ -127,10 +138,10 @@
|
||||||
platforms = [];
|
platforms = [];
|
||||||
source = {
|
source = {
|
||||||
remotes = ["https://rubygems.org"];
|
remotes = ["https://rubygems.org"];
|
||||||
sha256 = "0qaamqsh5f3szhcakkak8ikxlzxqnv49n2p7504hcz2l0f4nj0wx";
|
sha256 = "1ffix518y7976qih9k1lgnc17i3v6yrlh0a3mckpxdb4wc2vrp16";
|
||||||
type = "gem";
|
type = "gem";
|
||||||
};
|
};
|
||||||
version = "1.14.1";
|
version = "1.14.5";
|
||||||
};
|
};
|
||||||
jekyll = {
|
jekyll = {
|
||||||
dependencies = ["addressable" "colorator" "em-websocket" "i18n" "jekyll-sass-converter" "jekyll-watch" "kramdown" "kramdown-parser-gfm" "liquid" "mercenary" "pathutil" "rouge" "safe_yaml" "terminal-table" "webrick"];
|
dependencies = ["addressable" "colorator" "em-websocket" "i18n" "jekyll-sass-converter" "jekyll-watch" "kramdown" "kramdown-parser-gfm" "liquid" "mercenary" "pathutil" "rouge" "safe_yaml" "terminal-table" "webrick"];
|
||||||
|
@ -138,10 +149,10 @@
|
||||||
platforms = [];
|
platforms = [];
|
||||||
source = {
|
source = {
|
||||||
remotes = ["https://rubygems.org"];
|
remotes = ["https://rubygems.org"];
|
||||||
sha256 = "0wbp9xjnjv832ksqs816napy6amp5fh8v4wbrxlpxvgakqz6scsx";
|
sha256 = "0638cvpmk3py1w2dxpav6l0c854y6l94b6gyc2aa16i7r897z64a";
|
||||||
type = "gem";
|
type = "gem";
|
||||||
};
|
};
|
||||||
version = "4.3.2";
|
version = "4.3.3";
|
||||||
};
|
};
|
||||||
jekyll-feed = {
|
jekyll-feed = {
|
||||||
dependencies = ["jekyll"];
|
dependencies = ["jekyll"];
|
||||||
|
@ -165,16 +176,6 @@
|
||||||
};
|
};
|
||||||
version = "0.1.10";
|
version = "0.1.10";
|
||||||
};
|
};
|
||||||
jekyll-paginate = {
|
|
||||||
groups = ["default"];
|
|
||||||
platforms = [];
|
|
||||||
source = {
|
|
||||||
remotes = ["https://rubygems.org"];
|
|
||||||
sha256 = "0r7bcs8fq98zldih4787zk5i9w24nz5wa26m84ssja95n3sas2l8";
|
|
||||||
type = "gem";
|
|
||||||
};
|
|
||||||
version = "1.1.0";
|
|
||||||
};
|
|
||||||
jekyll-sass-converter = {
|
jekyll-sass-converter = {
|
||||||
dependencies = ["sass-embedded"];
|
dependencies = ["sass-embedded"];
|
||||||
groups = ["default"];
|
groups = ["default"];
|
||||||
|
@ -208,17 +209,6 @@
|
||||||
};
|
};
|
||||||
version = "1.4.0";
|
version = "1.4.0";
|
||||||
};
|
};
|
||||||
jekyll-toc = {
|
|
||||||
dependencies = ["jekyll" "nokogiri"];
|
|
||||||
groups = ["default"];
|
|
||||||
platforms = [];
|
|
||||||
source = {
|
|
||||||
remotes = ["https://rubygems.org"];
|
|
||||||
sha256 = "1gczpbfkyswy5dwpq0lcssf15l0g0z6zy4zifc5d6pwmiqyxq8mk";
|
|
||||||
type = "gem";
|
|
||||||
};
|
|
||||||
version = "0.18.0";
|
|
||||||
};
|
|
||||||
jekyll-watch = {
|
jekyll-watch = {
|
||||||
dependencies = ["listen"];
|
dependencies = ["listen"];
|
||||||
groups = ["default"];
|
groups = ["default"];
|
||||||
|
@ -235,10 +225,10 @@
|
||||||
platforms = [];
|
platforms = [];
|
||||||
source = {
|
source = {
|
||||||
remotes = ["https://rubygems.org"];
|
remotes = ["https://rubygems.org"];
|
||||||
sha256 = "0r9jmjhg2ly3l736flk7r2al47b5c8cayh0gqkq0yhjqzc9a6zhq";
|
sha256 = "0b4qsi8gay7ncmigr0pnbxyb17y3h8kavdyhsh7nrlqwr35vb60q";
|
||||||
type = "gem";
|
type = "gem";
|
||||||
};
|
};
|
||||||
version = "2.7.1";
|
version = "2.7.2";
|
||||||
};
|
};
|
||||||
json-minify = {
|
json-minify = {
|
||||||
dependencies = ["json"];
|
dependencies = ["json"];
|
||||||
|
@ -289,10 +279,10 @@
|
||||||
platforms = [];
|
platforms = [];
|
||||||
source = {
|
source = {
|
||||||
remotes = ["https://rubygems.org"];
|
remotes = ["https://rubygems.org"];
|
||||||
sha256 = "13rgkfar8pp31z1aamxf5y7cfq88wv6rxxcwy7cmm177qq508ycn";
|
sha256 = "0rwwsmvq79qwzl6324yc53py02kbrcww35si720490z5w0j497nv";
|
||||||
type = "gem";
|
type = "gem";
|
||||||
};
|
};
|
||||||
version = "3.8.0";
|
version = "3.9.0";
|
||||||
};
|
};
|
||||||
mercenary = {
|
mercenary = {
|
||||||
groups = ["default"];
|
groups = ["default"];
|
||||||
|
@ -304,27 +294,6 @@
|
||||||
};
|
};
|
||||||
version = "0.4.0";
|
version = "0.4.0";
|
||||||
};
|
};
|
||||||
mini_portile2 = {
|
|
||||||
groups = ["default"];
|
|
||||||
platforms = [];
|
|
||||||
source = {
|
|
||||||
remotes = ["https://rubygems.org"];
|
|
||||||
sha256 = "1kl9c3kdchjabrihdqfmcplk3lq4cw1rr9f378y6q22qwy5dndvs";
|
|
||||||
type = "gem";
|
|
||||||
};
|
|
||||||
version = "2.8.5";
|
|
||||||
};
|
|
||||||
nokogiri = {
|
|
||||||
dependencies = ["mini_portile2" "racc"];
|
|
||||||
groups = ["default"];
|
|
||||||
platforms = [];
|
|
||||||
source = {
|
|
||||||
remotes = ["https://rubygems.org"];
|
|
||||||
sha256 = "004ip9x9281fxhpipwi8di1sb1dnabscq9dy1p3cxgdwbniqqi12";
|
|
||||||
type = "gem";
|
|
||||||
};
|
|
||||||
version = "1.15.5";
|
|
||||||
};
|
|
||||||
pathutil = {
|
pathutil = {
|
||||||
dependencies = ["forwardable-extended"];
|
dependencies = ["forwardable-extended"];
|
||||||
groups = ["default"];
|
groups = ["default"];
|
||||||
|
@ -341,30 +310,20 @@
|
||||||
platforms = [];
|
platforms = [];
|
||||||
source = {
|
source = {
|
||||||
remotes = ["https://rubygems.org"];
|
remotes = ["https://rubygems.org"];
|
||||||
sha256 = "1bni4qjrsh2q49pnmmd6if4iv3ak36bd2cckrs6npl111n769k9m";
|
sha256 = "17m8q2dzm7a74amnab5rf3f3m466i300awihl3ygh4v80wpf3j6j";
|
||||||
type = "gem";
|
type = "gem";
|
||||||
};
|
};
|
||||||
version = "5.0.4";
|
version = "6.0.0";
|
||||||
};
|
|
||||||
racc = {
|
|
||||||
groups = ["default"];
|
|
||||||
platforms = [];
|
|
||||||
source = {
|
|
||||||
remotes = ["https://rubygems.org"];
|
|
||||||
sha256 = "01b9662zd2x9bp4rdjfid07h09zxj7kvn7f5fghbqhzc625ap1dp";
|
|
||||||
type = "gem";
|
|
||||||
};
|
|
||||||
version = "1.7.3";
|
|
||||||
};
|
};
|
||||||
rake = {
|
rake = {
|
||||||
groups = ["default"];
|
groups = ["default"];
|
||||||
platforms = [];
|
platforms = [];
|
||||||
source = {
|
source = {
|
||||||
remotes = ["https://rubygems.org"];
|
remotes = ["https://rubygems.org"];
|
||||||
sha256 = "1ilr853hawi09626axx0mps4rkkmxcs54mapz9jnqvpnlwd3wsmy";
|
sha256 = "17850wcwkgi30p7yqh60960ypn7yibacjjha0av78zaxwvd3ijs6";
|
||||||
type = "gem";
|
type = "gem";
|
||||||
};
|
};
|
||||||
version = "13.1.0";
|
version = "13.2.1";
|
||||||
};
|
};
|
||||||
rb-fsevent = {
|
rb-fsevent = {
|
||||||
groups = ["default"];
|
groups = ["default"];
|
||||||
|
@ -382,30 +341,31 @@
|
||||||
platforms = [];
|
platforms = [];
|
||||||
source = {
|
source = {
|
||||||
remotes = ["https://rubygems.org"];
|
remotes = ["https://rubygems.org"];
|
||||||
sha256 = "1jm76h8f8hji38z3ggf4bzi8vps6p7sagxn3ab57qc0xyga64005";
|
sha256 = "0vmy8xgahixcz6hzwy4zdcyn2y6d6ri8dqv5xccgzc1r292019x0";
|
||||||
type = "gem";
|
type = "gem";
|
||||||
};
|
};
|
||||||
version = "0.10.1";
|
version = "0.11.1";
|
||||||
};
|
};
|
||||||
rexml = {
|
rexml = {
|
||||||
|
dependencies = ["strscan"];
|
||||||
groups = ["default"];
|
groups = ["default"];
|
||||||
platforms = [];
|
platforms = [];
|
||||||
source = {
|
source = {
|
||||||
remotes = ["https://rubygems.org"];
|
remotes = ["https://rubygems.org"];
|
||||||
sha256 = "05i8518ay14kjbma550mv0jm8a6di8yp5phzrd8rj44z9qnrlrp0";
|
sha256 = "09f3sw7f846fpcpwdm362ylqldwqxpym6z0qpld4av7zisrrzbrl";
|
||||||
type = "gem";
|
type = "gem";
|
||||||
};
|
};
|
||||||
version = "3.2.6";
|
version = "3.3.1";
|
||||||
};
|
};
|
||||||
rouge = {
|
rouge = {
|
||||||
groups = ["default"];
|
groups = ["default"];
|
||||||
platforms = [];
|
platforms = [];
|
||||||
source = {
|
source = {
|
||||||
remotes = ["https://rubygems.org"];
|
remotes = ["https://rubygems.org"];
|
||||||
sha256 = "1fkfa0iq3r9b0zzrxpxha17avmyzci3kidzmfbf6fd1279mndpb0";
|
sha256 = "072qvvrcqj0yfr3b0j932mlhvn41i38bq37z7z07i3ikagndkqwy";
|
||||||
type = "gem";
|
type = "gem";
|
||||||
};
|
};
|
||||||
version = "4.2.0";
|
version = "4.3.0";
|
||||||
};
|
};
|
||||||
safe_yaml = {
|
safe_yaml = {
|
||||||
groups = ["default"];
|
groups = ["default"];
|
||||||
|
@ -423,10 +383,20 @@
|
||||||
platforms = [];
|
platforms = [];
|
||||||
source = {
|
source = {
|
||||||
remotes = ["https://rubygems.org"];
|
remotes = ["https://rubygems.org"];
|
||||||
sha256 = "10f04wvgca22lynvy4pycabkf55p4jf3a3bhmmscjmxv89g9khpg";
|
sha256 = "1nmy052pm46781s7ca6x3l4yb5p3glh8sf201xwcwpk9rv2av9m2";
|
||||||
type = "gem";
|
type = "gem";
|
||||||
};
|
};
|
||||||
version = "1.69.5";
|
version = "1.77.5";
|
||||||
|
};
|
||||||
|
strscan = {
|
||||||
|
groups = ["default"];
|
||||||
|
platforms = [];
|
||||||
|
source = {
|
||||||
|
remotes = ["https://rubygems.org"];
|
||||||
|
sha256 = "0mamrl7pxacbc79ny5hzmakc9grbjysm3yy6119ppgsg44fsif01";
|
||||||
|
type = "gem";
|
||||||
|
};
|
||||||
|
version = "3.1.0";
|
||||||
};
|
};
|
||||||
terminal-table = {
|
terminal-table = {
|
||||||
dependencies = ["unicode-display_width"];
|
dependencies = ["unicode-display_width"];
|
||||||
|
|
18
index.md
18
index.md
|
@ -4,3 +4,21 @@ title: Ivan Bushchik
|
||||||
---
|
---
|
||||||
|
|
||||||
{% include_relative abouttext.md %}
|
{% include_relative abouttext.md %}
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<h1 style="font-size: 24px; margin-bottom: 0;">Recent posts</h1>
|
||||||
|
<div id="blog-archives">
|
||||||
|
{% for post in site.posts limit:5 %}
|
||||||
|
<article class="post" style="margin-top: 5px;">
|
||||||
|
<h2 style="font-size: 14pt; margin: 0 0 0 0;"><a href="{{ post.url }}">{{ post.title }}</a></h2>
|
||||||
|
<p class="meta"><span class="postdate">{{ post.date | date: "%b %d, %Y" }}</span></p>
|
||||||
|
{% if post.summary %}
|
||||||
|
<p>{{ post.summary }}</p>
|
||||||
|
{% endif %}
|
||||||
|
{% if post.img %}
|
||||||
|
<img src="{{ post.img }}" width=600 />
|
||||||
|
{% endif %}
|
||||||
|
</article>
|
||||||
|
{% endfor %}
|
||||||
|
</div>
|
||||||
|
</div>
|
Binary file not shown.
Before Width: | Height: | Size: 274 KiB |
BIN
posts_media/2023-10-21-overclocking-starfive-vf2/vf2_stress.png
Normal file
BIN
posts_media/2023-10-21-overclocking-starfive-vf2/vf2_stress.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 94 KiB |
Loading…
Reference in a new issue