Compare commits

...

12 Commits

Author SHA1 Message Date
Jef Roosens 62d78ea807
Make gh link rel="me"
ci/woodpecker/push/woodpecker Pipeline was successful Details
2022-05-24 19:47:24 +02:00
Jef Roosens dc888c4965
Added better welcoming page using permanent redirects
ci/woodpecker/push/woodpecker Pipeline was successful Details
2022-05-24 09:08:08 +02:00
Jef Roosens 8eedb3a82f
Add link to AUR account
ci/woodpecker/push/woodpecker Pipeline was successful Details
2022-05-22 15:06:55 +02:00
Jef Roosens 5f014aa8f7
added "music" post
ci/woodpecker/push/woodpecker Pipeline was successful Details
2022-05-16 21:19:35 +02:00
Jef Roosens 997aec5872
Replaced docs link with "other"
ci/woodpecker/push/woodpecker Pipeline was successful Details
2022-05-01 12:23:24 +02:00
Jef Roosens f35e256f2d
Added v-workflow post
ci/woodpecker/push/woodpecker Pipeline was successful Details
2022-04-27 22:53:36 +02:00
Jef Roosens fd71b872b5
Added vieter-0.2.0 post
ci/woodpecker/push/woodpecker Pipeline was successful Details
2022-04-11 10:04:12 +02:00
Jef Roosens cec0b7535d
necessity: Fixed broken docs link
ci/woodpecker/push/woodpecker Pipeline was successful Details
2022-04-07 10:36:58 +02:00
Jef Roosens a1a2e1c78d
Added "necessity" post
ci/woodpecker/push/woodpecker Pipeline was successful Details
2022-04-07 10:21:06 +02:00
Jef Roosens 2a2ebcc753
Wrote workflow post
ci/woodpecker/push/woodpecker Pipeline was successful Details
2022-04-05 16:00:21 +02:00
Jef Roosens 095e1bb247
Added link to documentation site
ci/woodpecker/push/woodpecker Pipeline was successful Details
2022-04-05 11:13:28 +02:00
Jef Roosens 569cfeb855
Forgot to remove draft status
ci/woodpecker/push/woodpecker Pipeline was successful Details
2022-04-04 14:09:51 +02:00
12 changed files with 299 additions and 24 deletions

View File

@ -13,13 +13,6 @@ pygmentsUseClasses = true
highlight = true
[menu]
[[menu.main]]
identifier = "posts"
name = "posts"
title = "posts"
url = "/"
weight = 10
[[menu.main]]
identifier = "blogroll"
name = "blogroll"
@ -27,15 +20,22 @@ pygmentsUseClasses = true
url = "/blogroll/"
weight = 20
[[menu.main]]
identifier = "Links"
name = "links"
title = "links"
url = "/links/"
weight = 30
[[menu.main]]
identifier = "about"
name = "about"
title = "about"
url = "/about/"
weight = 30
weight = 40
[permalinks]
posts = "/:title/"
posts = "/:filename/"
[markup.goldmark.renderer]
# Allows HTML in Markdown

View File

@ -1,5 +1,14 @@
---
title: "Home"
---
Welcome to my site! You can learn more about who I am [here](/about), or have a
look at my posts below :)
Welcome! I'm Jef, a Belgian CS student looking for his place on the internet.
I develop most of my projects on my personal [Gitea](/gitea) instance, but I'm
also present on <a href="/github" rel="me">GitHub</a>, [GitLab](/gitlab) &
[Codeberg](/codeberg). You can contact me on [Matrix](/matrix).
Besides that, I love music, hanging out with friends, and whisky! If you're
interested, I have a more in-depth [about](/about) page :) I also maintain a
few packages on the [AUR](/aur).

View File

@ -20,14 +20,5 @@ Trackmania Esports scene!
Music has been an important part of my life for many years. I'm one of those
people that listens to music multiple hours a day, during studying, cooking,
anything really. It really calms the chaos in my head, allowing me to think
more clearly. It's also a great way to improve my mood, or just to help me
process my current thoughts.
Some interesting links:
* My personal projects can be found on
[my Gitea instance](https://git.rustybever.be/Chewing_Bever).
* GitHub: [ChewingBever](https://github.com/ChewingBever)
* GitLab: [Chewing_Bever](https://gitlab.com/Chewing_Bever)
* Codeberg: [Chewing_Bever](https://codeberg.org/Chewing_Bever) (Rarely used)
* Matrix: [@jef:rustybever.be](https://matrix.to/#/@jef:rustybever.be)
more clearly. It's also a great way to improve my mood, or to help me process
my current thoughts.

View File

@ -0,0 +1,11 @@
---
title: "Links"
---
### Vieter
Vieter is an implementation of an Arch repository server written in V, combined
with a build system.
* [Docs](/docs/vieter)
* [API Docs](/api-docs/vieter)

View File

@ -0,0 +1,5 @@
---
title: "A Review of EndeavourOS"
date: 2022-04-05
draft: true
---

View File

@ -0,0 +1,58 @@
---
title: "Music"
date: 2022-05-16T20:58:18+02:00
---
Music has a profound effect on me. It dictates my mood, helps me process
emotions or keeps me focused. It motivates me when I'm running & helps me when
I'm down. And of course, I'm listening to some great music while writing this
post.
I felt like writing, mostly because I was feeling a bit like shit. It calms me
down, helps me put things in order. The idea to write about music just popped
into my head, but I've had it in the back of mind for a while now.
Music really is something special. It can evoke such a wide range of emotions,
from blissful joy to a depressed pitfall & everything in between. Whenever I'm
feeling down I just crack up some tunes. Not necessarily happy tunes mind you,
sometimes it's better to soak in the sadness for a bit, there's no point in
keeping it inside.
According to most people's standards, I listen to music *a lot*. I put in my
earbuds when I leave for classes at 8AM, or put on my headphones when I'm
working behind my desk. Every time I ride my bike, walk or run, I'm listening
to music. Whenever I'm studying or programming, I'm listening to music. In
total, I probably listen to music for at least 6 hours a day. Luckily that is
more than enough to justify buying a Tidal subscription for 10 euros a month ;p
That does bring me to my next point; I'm an audiophile. I love high resolution
audio & my audio setup reflects that. My Sennheiser HD 660S are very dear to
me, and they've provided me with hundreds of hours of listening pleasure at
this point.
I'm not really picky with what genres of music I listen to either. The music
just has to provide a certain feeling that fits my current mood. I do prefer
listening to entire albums, which is why I've amassed a great list of albums
that I love to listen to. Despite my horrible memory I tend to navigate this
list just fine, with each song just coming up as a feeling in the moment & my
mind magically navigating to the right album.
My love for music has been around for as long as I can remember. Back in high
school I was constantly listening to music; I've even played the piano for
years before stopping due to a lack of interest. Sadly that spirals back to my
lack of motivation for most things, but I digress.
The truth is, I wanted to write, just write, to process the exam stress that
I'm going through right now. I've got exams in two weeks & as usual, the stress
has been killing me. My horrible sleep hygiene doesn't help either. I rarely go
to bed before midnight & when I do, I just lie awake in bed, thinking. Thinking
of how I'll have to study more tomorrow, because otherwise I won't make it. A
constant fear of failure looms above me, ready to eat me up inside.
Well, this post got depressing quite fast, I'm sorry about that. Thing is, I
want to use this site to express myself, so when I'm feeling stressed, I want
to express that as well. It's liberating in a way, sharing this information
with "the world", in my own controlled way.
If you've gotten this far, thank for you reading through my ramblings &
insecurities, I do truly appreciate it. Au revoir.

View File

@ -0,0 +1,50 @@
---
title: "Necessity Creates Productivity"
date: 2022-04-07T09:46:05+02:00
---
Or at least, that's how I experience it. Let me explain.
I have a lot of sideprojects. Most would say too many (I'm inclined to agree).
I often start these projects because I feel like it, without a particular
purpose or useful goal in mind. Programming is just something that I really
enjoy, so I tend to create ideas out of thin air just because I want to write
something, anything. There is however another group of sideprojects, the ones
that I start because I need something. Those that fix an annoyance, or make my
life easier. What I've noticed is that I'm a lot more productive & less easily
burned out when I'm working on these kinds of projects.
One of those projects (and my main project atm) is
[Vieter](https://git.rustybever.be/Chewing_Bever/vieter). I originally wrote a
full description of Vieter here & why I needed it, but that's really not what
this post is about. You can still read about it in [the docs](/docs/vieter/#why)
if you want. The important part to take away from this is that it's something I
really need. It made me more productive and greatly pushed down my update
times, which I personally find very important. That's why I'm getting a lot of
things done for this project, because I know that it'll be worth it in the end
& improve my life.
To show the other site of the spectrum, my original idea for this site was a
collection of microservices, with a complex authentication system & a full
JavaScript frontend ([source](https://git.rustybever.be/rusty-bever)). Let's
just admit it here, this idea was way too ambitious and not even *that* useful.
The only part that I'm actually still considering writing is the authentication
part, because I do have some other ideas to go along with those, but that's
another post entirely ;p
Due to this overkill idea, I didn't actually set up this site for over a year I
think, just because I just couldn't get myself to properly work on the
implementation. I actually really enjoy writing these blog-style posts, so it's
quite sad I didn't set up a proper Hugo-based site immediately. Gladly at some
point I got through my stubbornness, and I set up this site in less than a day
:) This site still runs on [a custom backend](/switch-to-axum), but it's much
more minimal and only supports what I really need. My mind's a lot calmer now
that I've properly left my original idea behind.
I'm honestly not quite sure what point I'm trying to make. This post is just an
observation about how my unpredictable mind can work. Knowing myself, the
sideprojects will probably never stop coming, but that's okay tbh. The
important part is that most of them have a purpose, and don't just burn me out
unnecessarily.
Fin.

View File

@ -1,11 +1,14 @@
---
title: "Switching to Axum"
date: 2022-04-02
tags:
- rust
---
In classic Jef fashion, it took me less than a week to completely overhaul the
way my site works ;p Visually nothing's changed, but internally the website is
now being powered by a web server written in Rust, powered by
now being powered by a web server [written in
Rust](https://git.rustybever.be/Chewing_Bever/site-backend), powered by
[Axum](https://github.com/tokio-rs/axum).
The reason for this is expandibility. While nginx is really good at what it

View File

@ -1,7 +1,6 @@
---
title: "Tour of Flanders"
date: 2022-04-04T12:53:23+02:00
draft: true
---
Yesterday, some friends & I met to "watch" the Tour of Flanders (gonna have to

View File

@ -0,0 +1,83 @@
---
title: "My V Workflow"
date: 2022-04-27T22:13:04+02:00
---
While I'm trying to find time to work on
[Vieter](https://git.rustybever.be/Chewing_Bever/vieter) (college is killing me
right now), I figured I could describe my current workflow for developing
Vieter, and in general, V!
I've always been a rather minimal developer, preferring simplicity &
lightweight programs over lots of smart IDE features. While this mentality
doesn't work for all languages, V's simplicity allows me to write it without
any smart features whatsoever!
## Tools
### Neovim
We can't do any coding without a text editor of course. My weapon of choice is
[Neovim](https://neovim.io/), the great Vim fork, ran inside my [st
build](https://git.rustybever.be/Chewing_Bever/st). My main reason for choosing
Neovim over Vim (besides the more active development) is the Lua, LSP &
Treesitter support.
I try to keep [my
config](https://git.rustybever.be/Chewing_Bever/dotfiles/src/branch/master/.config/nvim)
& list of plugins rather short by following the basic rule of only adding a
plugin if I find it adds actual value to my setup. If the plugin or setting
only adds a gimmick that I don't actively use, I probably won't add it.
### VLS
Thanks to the LSP support in Neovim I'm able to use
[VLS](https://github.com/vlang/vls) (V Language Server). This gives me better
autocomplete, useful suggestions & error messages, all without ever having to
run the compiler myself!
### Treesitter
The VLS repo also comes with grammar definitions for treesitter. This allows me
to import this into Neovim, providing me with better code highlighting using my
treesitter-compatible theme.
### Compiler mirror
I don't like it when things break without my permission. While it's a very good
thing that V is so actively developed, it does make programs rather sensitive
to change & can cause stuff to break after a compiler update. This is why I
maintain my own mirror of the compiler which I update regularly. Thanks to
this, I have full control over how frequently my compiler updates, providing me
with a level of stability on both my laptops & in my CI that can't be obtained
when blindly following the master branch.
### Packaging for Arch Linux
My distro of choice for all my devices is EndeavourOS, an Arch-based distro
(well, it's basically just a very good installer ;p). Thanks to this
uniformity, it's very easy for me to package my compiler mirror, VLS & the
treesitter grammar.
For the compiler, I build packages inside my CI
([PKGBUILD](https://git.rustybever.be/Chewing_Bever/v/src/branch/master/PKGBUILD))
& publish this package to my personal Vieter instance. Then, using this
compiler package, I periodically build & package VLS
([PKGBUILD](https://git.rustybever.be/bur/vieter-vls/src/branch/main/PKGBUILD)).
This is to make sure my VLS build is compatible with my compiler version. The
PKGBUILD also shows how to compile the treesitter grammar separately from VLS.
## Workflow
Just like my config, my way of working is rather simple. I really like working
in the terminal, so I usually write small Makefiles
([example](https://git.rustybever.be/Chewing_Bever/vieter/src/branch/dev/Makefile))
that do everything I need, e.g. compile, lint, test etc. Using the
[toggleterm](https://github.com/akinsho/toggleterm.nvim) plugin, I spawn
terminals inside Neovim & use `make` to do everything else!
## Outro
I'm not too sure how to end this post. I hope it might help someone who's
struggling to find a setup that works, or perhaps the links to my PKGBUILDs
could come in handy for someone ;p

View File

@ -0,0 +1,29 @@
---
title: "Announcing Vieter 0.2.0"
date: 2022-04-11
---
When this post gets published, I'll have successfully released version 0.2.0 of
[Vieter](https://git.rustybever.be/Chewing_Bever/vieter)! For the uninitiated,
Vieter is currently my biggest passion project. It's an implementation of an
Arch repository server, paired with a build system for automatically building
packages from the AUR & other sources.
This release brings a lot of goodies; the changelog & release binaries can be
found
[here](https://git.rustybever.be/Chewing_Bever/vieter/releases/tag/0.2.0). The
biggest changes are that Vieter now supports multiple repositories with support
for packages for multiple architectures! Besides that, there's some bug fixing,
improvements to the CLI & an added setting for the build system that allows for
building on other architectures. The [docs](https://rustybever.be/docs/vieter/)
have also been updated to reflect this new update.
Of course, development won't just stop now, I have too many ideas for that ;p
[0.3.0](https://git.rustybever.be/Chewing_Bever/vieter/milestone/27) will bring
with it some big improvements to the builder system, allowing for more
flexibility & configuration.
If you're interested in the project, join me over at
[#vieter:rustybever.be](https://matrix.to/#/#vieter:rustybever.be) on Matrix!
Cheers <3

View File

@ -0,0 +1,37 @@
---
title: "My Workflow For This Site"
date: 2022-04-05
---
This blog is about a week old now. I'm still figuring out what kind of content
I'd like to post, or what kind of writing style I have. What I have figured out
however, is my workflow.
Thanks to my backend [powered by Axum](/switch-to-axum) I have pretty much full
creative control over the internal workings of my site. This gave me the
freedom to implement a system that I think works very well. Let's elaborate a
bit.
Both the blog & the documentation part of my website are currently being
generated using Hugo, a static site generator. The lack of JavaScript makes the
site very fast, which is always a big plus in my opinion. Thanks to my
[self-hosted CI](https://woodpecker-ci.org/), I can automatically build &
deploy the static files every time I update anything. My CI builds the static
website, compresses it into a tarball, & uploads this to my backend. This
process takes less than 10 seconds on a warm CI runner & it allows me to very
quickly update my site, correct errors, or just upload a post like this one!
My backend supports a simple system of serving multiple sites. In practice this
means that I can specify which site I'm uploading using a query parameter in
the POST request. This is how I'm able to serve my documentation on
[/docs](/docs) while still having my blog available as the "default" site.
The "source code" for my site(s) is stored in Git repositories using Markdown.
Considering I use Git on a daily basis, this is perfect for me & I don't see it
as an "extra step" anymore. For college I use Git as well, so using it in
personal projects is a no-brainer.
I have no idea how common this setup is, or if it'll work as well down the
road, but for now, I find it works perfectly.
Thanks for reading!