Compare commits
No commits in common. "fe6525e7215291702b16475a5e376fc325aeb77d" and "b7f707dcc0fdd5829893bde7144b5de39e53bc61" have entirely different histories.
fe6525e721
...
b7f707dcc0
10 changed files with 126 additions and 96 deletions
24
Dockerfile
Normal file
24
Dockerfile
Normal file
|
|
@ -0,0 +1,24 @@
|
||||||
|
FROM alpine:3.15.3 AS builder
|
||||||
|
|
||||||
|
RUN apk update && \
|
||||||
|
apk add --no-cache \
|
||||||
|
hugo
|
||||||
|
|
||||||
|
WORKDIR /app
|
||||||
|
|
||||||
|
COPY . ./
|
||||||
|
|
||||||
|
# Build the site
|
||||||
|
RUN hugo
|
||||||
|
|
||||||
|
|
||||||
|
FROM nginx:1.21.6-alpine
|
||||||
|
|
||||||
|
ENV MATRIX_SERVER=matrix.rustybever.be:443 \
|
||||||
|
MATRIX_CLIENT_SERVER=https://matrix.rustybever.be
|
||||||
|
|
||||||
|
COPY nginx/nginx.conf /etc/nginx/nginx.conf
|
||||||
|
COPY nginx/default.conf /etc/nginx/conf.d/default.conf
|
||||||
|
COPY nginx/*.conf.template /etc/nginx/templates/
|
||||||
|
|
||||||
|
COPY --from=builder /app/public /usr/share/nginx/html
|
||||||
|
|
@ -20,19 +20,12 @@ pygmentsUseClasses = true
|
||||||
url = "/"
|
url = "/"
|
||||||
weight = 10
|
weight = 10
|
||||||
|
|
||||||
[[menu.main]]
|
|
||||||
identifier = "blogroll"
|
|
||||||
name = "blogroll"
|
|
||||||
title = "blogroll"
|
|
||||||
url = "/blogroll/"
|
|
||||||
weight = 20
|
|
||||||
|
|
||||||
[[menu.main]]
|
[[menu.main]]
|
||||||
identifier = "about"
|
identifier = "about"
|
||||||
name = "about"
|
name = "about"
|
||||||
title = "about"
|
title = "about"
|
||||||
url = "/about/"
|
url = "/about/"
|
||||||
weight = 30
|
weight = 20
|
||||||
|
|
||||||
[permalinks]
|
[permalinks]
|
||||||
posts = "/:title/"
|
posts = "/:title/"
|
||||||
|
|
|
||||||
|
|
@ -1,17 +0,0 @@
|
||||||
---
|
|
||||||
title: "Blogroll"
|
|
||||||
---
|
|
||||||
|
|
||||||
Below you can find some other blogs that I follow!
|
|
||||||
|
|
||||||
* [Jan-Lukas Else](https://jlelse.blog/)
|
|
||||||
* [Rubenerd](https://rubenerd.com/)
|
|
||||||
* [Björn Wärmedal](https://warmedal.se/~bjorn/)
|
|
||||||
* [Henrique Dias](https://hacdias.com/)
|
|
||||||
* [Brain Baking](https://brainbaking.com/)
|
|
||||||
* [Ru Singh](https://rusingh.com/)
|
|
||||||
* [Hey Georgie](https://hey.georgie.nu/)
|
|
||||||
* [James' Coffee Blog](https://jamesg.blog/)
|
|
||||||
* [Kev Quirk](https://kevq.uk/)
|
|
||||||
* [Oh Hello Ana](https://ohhelloana.blog/)
|
|
||||||
* [astrid.tech](https://astrid.tech/)
|
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 2.3 MiB |
|
|
@ -1,27 +0,0 @@
|
||||||
---
|
|
||||||
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
|
|
||||||
trust Google Translate on this one). Mind the quotes, because none of us really
|
|
||||||
know anything about cycling ;p One of us just lived close to where the tour
|
|
||||||
ended, so we used this as an excuse to organize a party at their place!
|
|
||||||
|
|
||||||
It was really fun standing in a big crowd of bystanders while the two
|
|
||||||
frontrunners passed by. Everyone went wild! It really shows how cosy a group of
|
|
||||||
Belgians can be if we just don't talk about anything besides sports (let's
|
|
||||||
leave the politics aside).
|
|
||||||
|
|
||||||
Afterwards, we went back to their place, ate some delicious burgers courtesy of
|
|
||||||
their mom, and watched [De
|
|
||||||
Mol](https://en.wikipedia.org/wiki/De_Mol_(TV_series)) together. For the rest
|
|
||||||
of the evening we had some beer & wine (and a glass of Johnnie Walker Black
|
|
||||||
Label ;) ), and just talked about everything. I really enjoy these kinds of
|
|
||||||
evenings, chilling with friends, no pressure to go out, just relaxing & talking
|
|
||||||
with some good booze :)
|
|
||||||
|
|
||||||
{{< figure src="./bert-enjoying-himself.jpg" title="Bert having some fun while we're all focused on the big screen" >}}
|
|
||||||
|
|
||||||
{{< figure src="./later-in-the-evening.jpg" title="After a few drinks (I gotta shave)" >}}
|
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 2.6 MiB |
|
|
@ -1,44 +0,0 @@
|
||||||
---
|
|
||||||
title: "Tuxedo Book XP14 12th Gen Review"
|
|
||||||
date: 2022-04-02
|
|
||||||
draft: true
|
|
||||||
---
|
|
||||||
|
|
||||||
Fro the last couple of years, my main driver was a Macbook Air 13" from 2013.
|
|
||||||
It was my sister's old laptop & I claimed it when she replaced it because it
|
|
||||||
became too slow. Naturally, I put Linux on it and, after a few distro hops,
|
|
||||||
settled on EndeavourOS. This setup worked well for about 3 years, but it was
|
|
||||||
getting rather old. After about a year of using it myself I had to replace the
|
|
||||||
battery, and after another two years or so that one became useless as well. It
|
|
||||||
was time for a change, so I started searching.
|
|
||||||
|
|
||||||
Thanks to a recommendation from a friend, I found Tuxedo Computers and I just
|
|
||||||
couldn't get them out of my head, so eventually I gave in and bought one! As
|
|
||||||
the title already revealed, the model's a Tuxedo Book XP14 Gen12.
|
|
||||||
|
|
||||||
My specific version has a 120Hz display, 500GB of a Samsung 980, 2 x 8GB of
|
|
||||||
DDR4 RAM, an i5-1135G7 & Intel Iris Xe Graphics G7 80EUs.
|
|
||||||
|
|
||||||
Now that we've got the nerd stats out of the way, let's talk about the laptop
|
|
||||||
itself.
|
|
||||||
|
|
||||||
## The Good
|
|
||||||
|
|
||||||
The build quality is very solid. While the top half containing the display is
|
|
||||||
made up of a solid metal casing, the bottom part consists of a sturdy plastic.
|
|
||||||
There is some deck flex, but definitely not a level I would consider an issue.
|
|
||||||
|
|
||||||
The trackpad is very responsive & pairs nicely with the smoothness of the
|
|
||||||
cursor on the 120Hz display. I personally think the keyboard is quite amazing.
|
|
||||||
It's got a satisfying travel time & feels very solid for a membrane keyboard.
|
|
||||||
|
|
||||||
IO is more than enough, with a Kensington lock, SD card reader, gigabit
|
|
||||||
Ethernet port, Thunderbolt 4 port, two USB 3 ports, another USB-C port, HDMI &
|
|
||||||
two-in-one audio jack.
|
|
||||||
|
|
||||||
Under normal load the fans are completely silent, while at peak they're audible
|
|
||||||
but not annoying or overly loud.
|
|
||||||
|
|
||||||
Battery life is quite decent; under light load with dimmed backlight it can go
|
|
||||||
for about 6 hours. I do recommend properly configuring some energy profiles in
|
|
||||||
the Tuxedo Control Center.
|
|
||||||
15
nginx/default.conf
Normal file
15
nginx/default.conf
Normal file
|
|
@ -0,0 +1,15 @@
|
||||||
|
# vim: ft=nginx
|
||||||
|
|
||||||
|
# =====FRONTEND HOSTING=====
|
||||||
|
location / {
|
||||||
|
root /usr/share/nginx/html;
|
||||||
|
index index.html;
|
||||||
|
}
|
||||||
|
|
||||||
|
error_page 404 /404.html;
|
||||||
|
|
||||||
|
# redirect server error pages to the static page /50x.html
|
||||||
|
error_page 500 502 503 504 /50x.html;
|
||||||
|
location = /50x.html {
|
||||||
|
root /usr/share/nginx/html;
|
||||||
|
}
|
||||||
49
nginx/matrix.conf.template
Normal file
49
nginx/matrix.conf.template
Normal file
|
|
@ -0,0 +1,49 @@
|
||||||
|
# vim: ft=nginx
|
||||||
|
|
||||||
|
# =====MATRIX WELL-KNOWN FILES=====
|
||||||
|
# Used for server federation
|
||||||
|
location = /.well-known/matrix/server {
|
||||||
|
charset utf-8;
|
||||||
|
default_type application/json;
|
||||||
|
|
||||||
|
if ($request_method = 'GET') {
|
||||||
|
add_header Access-Control-Allow-Origin '*';
|
||||||
|
add_header Access-Control-Allow-Methods 'GET, POST, PUT, DELETE, OPTIONS';
|
||||||
|
add_header Access-Control-Allow-Headers 'X-Requested-With, Content-Type, Authorization';
|
||||||
|
|
||||||
|
return 200 '{"m.server":"${MATRIX_SERVER}"}';
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($request_method = 'OPTIONS') {
|
||||||
|
add_header Access-Control-Allow-Origin '*';
|
||||||
|
add_header Access-Control-Allow-Methods 'GET, POST, PUT, DELETE, OPTIONS';
|
||||||
|
add_header Access-Control-Allow-Headers 'X-Requested-With, Content-Type, Authorization';
|
||||||
|
add_header 'Content-Length' 0;
|
||||||
|
return 204;
|
||||||
|
}
|
||||||
|
|
||||||
|
return 405;
|
||||||
|
}
|
||||||
|
|
||||||
|
location = /.well-known/matrix/client {
|
||||||
|
charset utf-8;
|
||||||
|
default_type application/json;
|
||||||
|
|
||||||
|
if ($request_method = 'GET') {
|
||||||
|
add_header Access-Control-Allow-Origin '*';
|
||||||
|
add_header Access-Control-Allow-Methods 'GET, POST, PUT, DELETE, OPTIONS';
|
||||||
|
add_header Access-Control-Allow-Headers 'X-Requested-With, Content-Type, Authorization';
|
||||||
|
|
||||||
|
return 200 '{"m.homeserver":{"base_url":"${MATRIX_CLIENT_SERVER}"}}';
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($request_method = 'OPTIONS') {
|
||||||
|
add_header Access-Control-Allow-Origin '*';
|
||||||
|
add_header Access-Control-Allow-Methods 'GET, POST, PUT, DELETE, OPTIONS';
|
||||||
|
add_header Access-Control-Allow-Headers 'X-Requested-With, Content-Type, Authorization';
|
||||||
|
add_header 'Content-Length' 0;
|
||||||
|
return 204;
|
||||||
|
}
|
||||||
|
|
||||||
|
return 405;
|
||||||
|
}
|
||||||
37
nginx/nginx.conf
Normal file
37
nginx/nginx.conf
Normal file
|
|
@ -0,0 +1,37 @@
|
||||||
|
user nginx;
|
||||||
|
worker_processes auto;
|
||||||
|
|
||||||
|
error_log /var/log/nginx/error.log notice;
|
||||||
|
pid /var/run/nginx.pid;
|
||||||
|
|
||||||
|
|
||||||
|
events {
|
||||||
|
worker_connections 1024;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
http {
|
||||||
|
include /etc/nginx/mime.types;
|
||||||
|
default_type application/octet-stream;
|
||||||
|
|
||||||
|
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
|
||||||
|
'$status $body_bytes_sent "$http_referer" '
|
||||||
|
'"$http_user_agent" "$http_x_forwarded_for"';
|
||||||
|
|
||||||
|
access_log /var/log/nginx/access.log main;
|
||||||
|
|
||||||
|
sendfile on;
|
||||||
|
|
||||||
|
keepalive_timeout 65;
|
||||||
|
|
||||||
|
gzip off;
|
||||||
|
|
||||||
|
server {
|
||||||
|
listen 80;
|
||||||
|
listen [::]:80;
|
||||||
|
|
||||||
|
# This order is important, as the Matrix matches should be evaluated first
|
||||||
|
include /etc/nginx/conf.d/matrix.conf;
|
||||||
|
include /etc/nginx/conf.d/default.conf;
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue