diff options
| author | Kumar Damani <me@kumardamani.net> | 2026-07-29 17:02:57 +0000 |
|---|---|---|
| committer | Kumar Damani <me@kumardamani.net> | 2026-07-29 17:02:57 +0000 |
| commit | 564ab84af7f69603e3658bce846168f2cfb91249 (patch) | |
| tree | 1d0082161f294dac2eb1f53e91a9470b5ece236c /post | |
| parent | f2315a58fdaaa20c9e1300399ea8d528c80e2cc6 (diff) | |
normalized, and converted all images to webp
Diffstat (limited to 'post')
161 files changed, 75 insertions, 75 deletions
diff --git a/post/a-rack-finally.typ b/post/a-rack-finally.typ index 8cbf084..ec3d530 100644 --- a/post/a-rack-finally.typ +++ b/post/a-rack-finally.typ @@ -5,7 +5,7 @@ Migrating my home-lab to a more permanent home. = tldr; -#fig("a-rack-finally/tldr.png", alt: "before and after pic") +#fig("a-rack-finally/tldr.webp", alt: "before and after pic") Mostly. @@ -22,7 +22,7 @@ Once I moved to a larger space, naturally, I expanded. Unfortunately a worn-out chair was all that was left of my budget at the time :) ] -#fig("a-rack-finally/annotated.png", alt: "all my equipment annotated") +#fig("a-rack-finally/annotated.webp", alt: "all my equipment annotated") + See that NAS up there? It came with rack-rails. Sure would be nice to use them so that I don't have to take eveything above it off every time @@ -50,7 +50,7 @@ mount two rack-shelves back-to-back. More on this later. I had already measured my stuff prior to purchasing the rack. ] -#fig("a-rack-finally/rack.jpg", alt: "my new rack assembled") +#fig("a-rack-finally/rack.webp", alt: "my new rack assembled") Its cheap, but sturdy enough once assembled. It will do the job for now. @@ -59,25 +59,25 @@ Its cheap, but sturdy enough once assembled. It will do the job for now. First things to go in are the patch-panel and my new (to me) Brocade switch. -#fig("a-rack-finally/switch-and-patch-panel.jpg", alt: "switch and patch panel in") +#fig("a-rack-finally/switch-and-patch-panel.webp", alt: "switch and patch panel in") After some wrangling with the console port, I got it configured. -#fig("a-rack-finally/switch-reset.jpg", alt: "console into switch from laptop") +#fig("a-rack-finally/switch-reset.webp", alt: "console into switch from laptop") My rack rails in action. -#fig("a-rack-finally/rack-rails.jpg", alt: "sliding in the NAS on the rack rails") +#fig("a-rack-finally/rack-rails.webp", alt: "sliding in the NAS on the rack rails") And the rest of the crap. Hopefully, now you can see why I needed those shelves to fit back-to-back... -#fig("a-rack-finally/side-vew.jpg", alt: "side view of the rack to show the shelves.") +#fig("a-rack-finally/side-vew.webp", alt: "side view of the rack to show the shelves.") Still kind of a mess, but less of an eye-sore? -#fig("a-rack-finally/rear-view.jpg", alt: "rearview of the rack to show the shelves.") +#fig("a-rack-finally/rear-view.webp", alt: "rearview of the rack to show the shelves.") In hindsight, I probably should've gone with a 15U :) @@ -85,15 +85,15 @@ In hindsight, I probably should've gone with a 15U :) Ended the day with this. -#fig("a-rack-finally/final.jpg", alt: "final rack at the end of the day") +#fig("a-rack-finally/final.webp", alt: "final rack at the end of the day") Checking back the next day...things were normal since the big shift. Yay we survived! -#fig("a-rack-finally/survived.png", alt: "grafana metics") +#fig("a-rack-finally/survived.webp", alt: "grafana metics") And...oh well. -#fig("a-rack-finally/24hlater.png", alt: "final final") +#fig("a-rack-finally/24hlater.webp", alt: "final final") ] diff --git a/post/a-rack-finally/24hlater.png b/post/a-rack-finally/24hlater.png Binary files differdeleted file mode 100644 index 393c550..0000000 --- a/post/a-rack-finally/24hlater.png +++ /dev/null diff --git a/post/a-rack-finally/24hlater.webp b/post/a-rack-finally/24hlater.webp Binary files differnew file mode 100644 index 0000000..b29a843 --- /dev/null +++ b/post/a-rack-finally/24hlater.webp diff --git a/post/a-rack-finally/annotated.png b/post/a-rack-finally/annotated.png Binary files differdeleted file mode 100644 index e3ecc28..0000000 --- a/post/a-rack-finally/annotated.png +++ /dev/null diff --git a/post/a-rack-finally/annotated.webp b/post/a-rack-finally/annotated.webp Binary files differnew file mode 100644 index 0000000..a349237 --- /dev/null +++ b/post/a-rack-finally/annotated.webp diff --git a/post/a-rack-finally/final.jpg b/post/a-rack-finally/final.jpg Binary files differdeleted file mode 100644 index 2366a1c..0000000 --- a/post/a-rack-finally/final.jpg +++ /dev/null diff --git a/post/a-rack-finally/final.webp b/post/a-rack-finally/final.webp Binary files differnew file mode 100644 index 0000000..09fb779 --- /dev/null +++ b/post/a-rack-finally/final.webp diff --git a/post/a-rack-finally/powering-on.jpg b/post/a-rack-finally/powering-on.jpg Binary files differdeleted file mode 100644 index 2872e7f..0000000 --- a/post/a-rack-finally/powering-on.jpg +++ /dev/null diff --git a/post/a-rack-finally/rack-rails.jpg b/post/a-rack-finally/rack-rails.jpg Binary files differdeleted file mode 100644 index b951ea5..0000000 --- a/post/a-rack-finally/rack-rails.jpg +++ /dev/null diff --git a/post/a-rack-finally/rack-rails.webp b/post/a-rack-finally/rack-rails.webp Binary files differnew file mode 100644 index 0000000..7155427 --- /dev/null +++ b/post/a-rack-finally/rack-rails.webp diff --git a/post/a-rack-finally/rack.jpg b/post/a-rack-finally/rack.jpg Binary files differdeleted file mode 100644 index afb86b2..0000000 --- a/post/a-rack-finally/rack.jpg +++ /dev/null diff --git a/post/a-rack-finally/rack.webp b/post/a-rack-finally/rack.webp Binary files differnew file mode 100644 index 0000000..866fac4 --- /dev/null +++ b/post/a-rack-finally/rack.webp diff --git a/post/a-rack-finally/rear-view.jpg b/post/a-rack-finally/rear-view.jpg Binary files differdeleted file mode 100644 index 9912dda..0000000 --- a/post/a-rack-finally/rear-view.jpg +++ /dev/null diff --git a/post/a-rack-finally/rear-view.webp b/post/a-rack-finally/rear-view.webp Binary files differnew file mode 100644 index 0000000..4e2f4d9 --- /dev/null +++ b/post/a-rack-finally/rear-view.webp diff --git a/post/a-rack-finally/side-vew.jpg b/post/a-rack-finally/side-vew.jpg Binary files differdeleted file mode 100644 index c65aa81..0000000 --- a/post/a-rack-finally/side-vew.jpg +++ /dev/null diff --git a/post/a-rack-finally/side-vew.webp b/post/a-rack-finally/side-vew.webp Binary files differnew file mode 100644 index 0000000..8b19d5f --- /dev/null +++ b/post/a-rack-finally/side-vew.webp diff --git a/post/a-rack-finally/survived.png b/post/a-rack-finally/survived.png Binary files differdeleted file mode 100644 index ac85cca..0000000 --- a/post/a-rack-finally/survived.png +++ /dev/null diff --git a/post/a-rack-finally/survived.webp b/post/a-rack-finally/survived.webp Binary files differnew file mode 100644 index 0000000..88665ad --- /dev/null +++ b/post/a-rack-finally/survived.webp diff --git a/post/a-rack-finally/switch-and-patch-panel.jpg b/post/a-rack-finally/switch-and-patch-panel.jpg Binary files differdeleted file mode 100644 index f2a4480..0000000 --- a/post/a-rack-finally/switch-and-patch-panel.jpg +++ /dev/null diff --git a/post/a-rack-finally/switch-and-patch-panel.webp b/post/a-rack-finally/switch-and-patch-panel.webp Binary files differnew file mode 100644 index 0000000..d9fc471 --- /dev/null +++ b/post/a-rack-finally/switch-and-patch-panel.webp diff --git a/post/a-rack-finally/switch-reset.jpg b/post/a-rack-finally/switch-reset.jpg Binary files differdeleted file mode 100644 index d71e522..0000000 --- a/post/a-rack-finally/switch-reset.jpg +++ /dev/null diff --git a/post/a-rack-finally/switch-reset.webp b/post/a-rack-finally/switch-reset.webp Binary files differnew file mode 100644 index 0000000..d4c1311 --- /dev/null +++ b/post/a-rack-finally/switch-reset.webp diff --git a/post/a-rack-finally/tldr.png b/post/a-rack-finally/tldr.png Binary files differdeleted file mode 100644 index 0322a34..0000000 --- a/post/a-rack-finally/tldr.png +++ /dev/null diff --git a/post/a-rack-finally/tldr.webp b/post/a-rack-finally/tldr.webp Binary files differnew file mode 100644 index 0000000..d68131f --- /dev/null +++ b/post/a-rack-finally/tldr.webp diff --git a/post/framework-server-p2.typ b/post/framework-server-p2.typ index e40b8e7..06d3b95 100644 --- a/post/framework-server-p2.typ +++ b/post/framework-server-p2.typ @@ -35,8 +35,8 @@ under that to make it worthwhile. I picked these up from eBay: -#fig("framework-server-p2/server-front.png", alt: "server front") -#fig("framework-server-p2/ethernet.png", alt: "ethernet adapter") +#fig("framework-server-p2/server-front.webp", alt: "server front") +#fig("framework-server-p2/ethernet.webp", alt: "ethernet adapter") #table( columns: 2, @@ -61,7 +61,7 @@ IPMI would have been nice-to-have, but I decided that for this price, and the bonus of that Nvidia K620 was too good to pass up! This is an immediate upgrade from my current integrated Iris GPU on my Framework server. -#fig("framework-server-p2/server-inside.png", alt: "server inside") +#fig("framework-server-p2/server-inside.webp", alt: "server inside") All of my home-lab VMs, and LXC containers run within Proxmox. So I set up a fresh Proxmox here. @@ -96,7 +96,7 @@ instance and Plex guests. Here's what my "rack" looks like now: -#fig("framework-server-p2/current-lab.jpg", alt: "current lab") +#fig("framework-server-p2/current-lab.webp", alt: "current lab") Once everything was back online, I powered down the old Framework server and re-installed it back onto its laptop chassis, bought a W10 license, and diff --git a/post/framework-server-p2/current-lab.jpg b/post/framework-server-p2/current-lab.jpg Binary files differdeleted file mode 100755 index d64be2e..0000000 --- a/post/framework-server-p2/current-lab.jpg +++ /dev/null diff --git a/post/framework-server-p2/current-lab.webp b/post/framework-server-p2/current-lab.webp Binary files differnew file mode 100644 index 0000000..e192134 --- /dev/null +++ b/post/framework-server-p2/current-lab.webp diff --git a/post/framework-server-p2/ethernet.png b/post/framework-server-p2/ethernet.png Binary files differdeleted file mode 100755 index f39110d..0000000 --- a/post/framework-server-p2/ethernet.png +++ /dev/null diff --git a/post/framework-server-p2/ethernet.webp b/post/framework-server-p2/ethernet.webp Binary files differnew file mode 100644 index 0000000..e2c0b2f --- /dev/null +++ b/post/framework-server-p2/ethernet.webp diff --git a/post/framework-server-p2/server-front.png b/post/framework-server-p2/server-front.png Binary files differdeleted file mode 100755 index 31e34da..0000000 --- a/post/framework-server-p2/server-front.png +++ /dev/null diff --git a/post/framework-server-p2/server-front.webp b/post/framework-server-p2/server-front.webp Binary files differnew file mode 100644 index 0000000..d9ede07 --- /dev/null +++ b/post/framework-server-p2/server-front.webp diff --git a/post/framework-server-p2/server-inside.png b/post/framework-server-p2/server-inside.png Binary files differdeleted file mode 100755 index 79e7139..0000000 --- a/post/framework-server-p2/server-inside.png +++ /dev/null diff --git a/post/framework-server-p2/server-inside.webp b/post/framework-server-p2/server-inside.webp Binary files differnew file mode 100644 index 0000000..b6c7972 --- /dev/null +++ b/post/framework-server-p2/server-inside.webp diff --git a/post/framework-server.typ b/post/framework-server.typ index 4e9d5b6..a8d82a3 100644 --- a/post/framework-server.typ +++ b/post/framework-server.typ @@ -11,12 +11,12 @@ How I re-purposed my Framework as a standalone server for my home-lab. I \#feelsbad for abusing my lowly NAS - -#img("framework-server/feelsbadman.png", alt: "feelsbadman", width: "150px") +#img("framework-server/feelsbadman.webp", alt: "feelsbadman", width: "150px") Its not it's fault that its owner expected it to run Collabora Online while running all his other services without instantly crashing... -#fig("framework-server/error.jpg", alt: "meme of error page") +#fig("framework-server/error.webp", alt: "meme of error page") Did I learn anything? Basically a NAS should just do NAS things like worry about storage. Compute should be handled by something else. @@ -52,14 +52,14 @@ over NFS from my NAS. I'll setup a dedicated "workstation" VM for those 1%-of-the-time tasks. -#fig("framework-server/physical.png", alt: "physical architecture image") +#fig("framework-server/physical.webp", alt: "physical architecture image") = Prior to starting! To avoid making the same mistakes I made, do the following *while the mainboard is still in the laptop chassis!* -#fig("framework-server/mistakes.jpg", alt: "mistakes meme") +#fig("framework-server/mistakes.webp", alt: "mistakes meme") + *Update your BIOS firmware to at least 3.17.* It is *impossible* to do so once the battery is un-plugged from the board on older firmwares. I learned @@ -70,7 +70,7 @@ is still in the laptop chassis!* + In your BIOS settings, enable "Standalone operation". + In your BIOS settings, under "Boot" enable the option to power-on on power-attach. - #fig("framework-server/bios.jpg", alt: "bios image") + #fig("framework-server/bios.webp", alt: "bios image") + Install Proxmox VE. Since this will require a screen, and keyboard input, you might as well do it now. See the #link(<hypervisor>)[hypervisor] section below. @@ -85,7 +85,7 @@ I'm using my original #extlink("https://frame.work/ca/en/products/mainboard-11th-gen-intel-core?v=FRANFG000B")[Framework 13] laptop. -#fig("framework-server/case.jpg", alt: "case image") +#fig("framework-server/case.webp", alt: "case image") Its an i7-1165G7 - yes a "mobile" CPU. Am I asking for trouble? We'll see. Its more than powerful enough for me (for now). @@ -112,7 +112,7 @@ I opted for the 2.5G #extlink("https://frame.work/ca/en/products/ethernet-expansion-card")[ethernet expansion card] from Framework. -#fig("framework-server/eth.jpg", alt: "framework eth adapter image") +#fig("framework-server/eth.webp", alt: "framework eth adapter image") I suppose one could also use a WiFi card, but it makes more sense to go wired in a 24/7 "on" configuration. @@ -127,7 +127,7 @@ So I opt for a cheap VPS from #extlink("https://www.racknerd.com/kvm-vps")[Racknerd]. These are about a \$1/mo for a public IPv4 IP, and a decent amount of network bandwidth. -#fig("framework-server/vps.png", alt: "racknerd vps pricing image") +#fig("framework-server/vps.webp", alt: "racknerd vps pricing image") == Storage @@ -139,7 +139,7 @@ I used the 1TB NVME drive I had on my Framework. _You should have a storage solution (NAS) in place already!_ -#fig("framework-server/nas.jpg", alt: "nas image") +#fig("framework-server/nas.webp", alt: "nas image") Setting this up is beyond the scope of this post. You can check out my DIY ZFS backed NAS setup @@ -168,7 +168,7 @@ There are also many options for pre-made NAS appliances such as Synology. Highly recommend a UPS such as #extlink("https://www.amazon.ca/APC-BE600M1-Back-Uninterrupted-Electronics-Computers/dp/B01FWAZEIU/ref=sr_1_6?crid=28ZH7JP9IYXPU&keywords=ups&qid=1690928556&sprefix=ups%2Caps%2C172&sr=8-6")[this]. -#fig("framework-server/ups.jpg", alt: "ups image") +#fig("framework-server/ups.webp", alt: "ups image") Even if you don't care about uptime, *you should care about data integrity* issues resulting from abrupt power-loss. @@ -199,7 +199,7 @@ allowing provisioning of VMs, and LXC Containers through code. Neat! - Under your host (mine's `pve`), under System, Network, create a bridge `vmbr0` with: -#fig("framework-server/net1.png", alt: "proxmox net image") +#fig("framework-server/net1.webp", alt: "proxmox net image") This will make your Proxmox host available in your home network. *Set this to something else if you like.* @@ -211,7 +211,7 @@ something else if you like.* While you're here, create another bridge `vmbr1` with `VLAN Aware` checked: -#fig("framework-server/net2.png", alt: "proxmox net image") +#fig("framework-server/net2.webp", alt: "proxmox net image") #quote(block: true)[ We are going to create our home-lab network primarily on `vmbr1`. Think of @@ -238,7 +238,7 @@ _selectively_ routing a segment of my network over a VPN. Here is what I would like: -#fig("framework-server/network.png", alt: "network architecture") +#fig("framework-server/network.webp", alt: "network architecture") == Goals: 1,2 @@ -253,7 +253,7 @@ Then I decided to try out OpenWRT, and boy am I glad I did. I gave it two networking interfaces, each `vbmrX` we created earlier: -#fig("framework-server/pfnet.png", alt: "openwrt bridge image") +#fig("framework-server/pfnet.webp", alt: "openwrt bridge image") - `vmbr0` will be used to access our router from the home-network. It will also be how our router gets access to the internet. Aka. *WAN*. @@ -267,7 +267,7 @@ I gave it two networking interfaces, each `vbmrX` we created earlier: I was able to setup a network with a few VLANs: -#fig("framework-server/wrtnet.png", alt: "openwrt network image") +#fig("framework-server/wrtnet.webp", alt: "openwrt network image") #quote(block: true)[ This means that the next time we create a new VM or LXC container, we can @@ -280,7 +280,7 @@ Few observations: - The Luci web UI is much more minimal and to the point. The terminology used for things are more in-line with what I'm familiar with. - Soon I had the segregation I was looking for thanks to Firewall settings: - #fig("framework-server/fw1.png", alt: "firewall settings image") + #fig("framework-server/fw1.webp", alt: "firewall settings image") - DHCP, *and* DNS working as expected. == Goals: 3 @@ -295,24 +295,24 @@ Then I started working on setting up my VPN (Wireguard) remote on my VPS. - Then I enabled the "DMZ" setting (but *not* "Advanced DMZ" - which is probably the _real_ DMZ) on my home ISP router settings, and added my OpenWRT VM to it. - #fig("framework-server/dmz.png", alt: "dmz image") + #fig("framework-server/dmz.webp", alt: "dmz image") - I also setup a port-forward for the Wireguard port 51820 from my ISP router settings, to point to my OpenWRT VM's internal port 51820. - #fig("framework-server/port1.png", alt: "port forward image") + #fig("framework-server/port1.webp", alt: "port forward image") After all that, I started setting up Wireguard on OpenWRT. - The corresponding OpenWRT package is called `luci-app-wireguard`. - This will give you the ability to create a Wireguard interface on OpenWRT. - #fig("framework-server/wg.png", alt: "wg menu image") + #fig("framework-server/wg.webp", alt: "wg menu image") - I followed the following excellent tutorial for setting up the Wireguard interface, configured to use my VPS as its peer: #extlink("https://www.youtube.com/watch?v=04q41GEPvKA")[Setting up Wireguard on OpenWRT] - Created the new interface and added the firewall settings: - #fig("framework-server/wrtnet2.png", alt: "openwrt wg ifrace") - #fig("framework-server/fw2.png", alt: "firewall wg settings image") + #fig("framework-server/wrtnet2.webp", alt: "openwrt wg ifrace") + #fig("framework-server/fw2.webp", alt: "firewall wg settings image") - As is, this will mean that *only* LAB will have internet access (using the Wireguard interface) - which is not what I want. I still want other subnets @@ -327,18 +327,18 @@ After all that, I started setting up Wireguard on OpenWRT. Luckily OpenWRT has a way to accomplish exactly this with a package called `luci-app-pbr`. This will add the PBR setting to your menu: -#fig("framework-server/pbr.png", alt: "pbr setting image") +#fig("framework-server/pbr.webp", alt: "pbr setting image") - I followed the following tutorial: #extlink("https://www.youtube.com/watch?v=FN2qfxNIs2g")[Setting up PBR on OpenWRT] - Set up the rule for my PBR: - #fig("framework-server/pbr2.png", alt: "pbr rule image") + #fig("framework-server/pbr2.webp", alt: "pbr rule image") - The default interface is set to `wan`, so everything else should behave as normal: - #fig("framework-server/pbr1.png", alt: "pbr global gateways image") + #fig("framework-server/pbr1.webp", alt: "pbr global gateways image") However, it did take many trail & error sessions (see the #link(<pbr-dns-leakage>)[dns leakage issues] section below) to get this working @@ -351,14 +351,14 @@ When I create a VM/container in my _Lab_ subnet, - its external IP is that of my VPS - when it reaches out to the internet, it goes through the Wireguard tunnel encrypted, to the VPS, and out the VPS's ISP. - #fig("framework-server/lab.png", alt: "lab flow image") + #fig("framework-server/lab.webp", alt: "lab flow image") When I create a VM/container *not* in my Lab subnet, - its external IP is the same as my home-network's public IP - when it reaches out to the internet, it goes through my home ISP (NAT), just like all other devices on my home-network. - #fig("framework-server/lan.png", alt: "lan flow image") + #fig("framework-server/lan.webp", alt: "lan flow image") PBR provides quite granular control over this, for example, if you run a Plex server, it frequently needs to access the `plex.tv` domain. You can choose to @@ -385,12 +385,12 @@ PostDown = iptables -t nat -D PREROUTING -p tcp -i eth0 --dport 443 -j DNAT --to Then we also need to setup port-forwards for 80,443 on OpenWRT going to our Reverse Proxy VM/Container. -#fig("framework-server/port2.png", alt: "port forwards image") +#fig("framework-server/port2.webp", alt: "port forwards image") I just setup a temporary Caddy container in reverse-proxy mode to test this out. -#fig("framework-server/rproxy.png", alt: "reverse-proxy setup image") +#fig("framework-server/rproxy.webp", alt: "reverse-proxy setup image") Once this works, we can move on to building out our services :) @@ -435,7 +435,7 @@ lxc.mount.entry: /dev/dri/renderD128 dev/renderD128 none bind,optional,create=fi Then inside your LXC container do `ls -al /dev/dri/` and you should see some devices. -#fig("framework-server/dri.png", alt: "gpu devices image") +#fig("framework-server/dri.webp", alt: "gpu devices image") = Issues <issues> @@ -456,7 +456,7 @@ BIOS update. So I proceeded to give that a shot from within Proxmox using `fwupmgr`: -#fig("framework-server/fail.png", alt: "bios up fail image") +#fig("framework-server/fail.webp", alt: "bios up fail image") And to my surprise it was complaining about _battery level_? Its not even connected to the battery... @@ -471,7 +471,7 @@ being connected. - So I went ahead and pretty much attached the whole thing back into the laptop chassis - Updated to 3.17, and applied "Standalone operation" - #fig("framework-server/bios2.png", alt: "bios update image") + #fig("framework-server/bios2.webp", alt: "bios update image") - Thankfully, all my connectivity issues have gone away now. - Framework support service is excellent! @@ -483,7 +483,7 @@ This one kept me up for many nights. To summarize: - in a host in the Lab network, doing an `apt update` the first time would hang, mid-way through - running it a few times again, would eventually succeed the operation - #fig("framework-server/wtf.jpg", alt: "wtf meme") + #fig("framework-server/wtf.webp", alt: "wtf meme") Could it be DNS? Could it be PBR? Could it be Wireguard? @@ -509,20 +509,20 @@ Although my external IP would correctly report to being my VPS one, tests like #extlink("https://github.com/macvk/dnsleaktest")[this] would show that DNS was still being sent to my home ISP. -#fig("framework-server/dns.jpg", alt: "dns meme image") +#fig("framework-server/dns.webp", alt: "dns meme image") To fix this, I had to: - *Un-check* setting default route on the Lab interface. - #fig("framework-server/fix1.png", alt: "dns fix 1 image") + #fig("framework-server/fix1.webp", alt: "dns fix 1 image") - Explicitly set DHCP DNS settings for my Lab gateway interface to use my VPS's `wg0` interface IP. - #fig("framework-server/fix2.png", alt: "dns fix 2 image") + #fig("framework-server/fix2.webp", alt: "dns fix 2 image") - Needed a static route defied for the `wg0` interface targeting the VPN network via the OpenWRT local IP for `wg0` as a gateway. - #fig("framework-server/fix3.png", alt: "dns fix 3 image") + #fig("framework-server/fix3.webp", alt: "dns fix 3 image") == pfSense <pfsense> @@ -551,7 +551,7 @@ so is my NAS as a storage server. Since switching to this setup, I've observed a dramatic improvement in responsiveness for all of my services. -#fig("framework-server/imp.png", alt: "improvement meme image") +#fig("framework-server/imp.webp", alt: "improvement meme image") Overall I'm quite pleased with how everything turned out once the appropriate BIOS was running on the Framework. diff --git a/post/framework-server/bios.jpg b/post/framework-server/bios.jpg Binary files differdeleted file mode 100755 index 76cda35..0000000 --- a/post/framework-server/bios.jpg +++ /dev/null diff --git a/post/framework-server/bios.webp b/post/framework-server/bios.webp Binary files differnew file mode 100644 index 0000000..bd6f82a --- /dev/null +++ b/post/framework-server/bios.webp diff --git a/post/framework-server/bios2.png b/post/framework-server/bios2.png Binary files differdeleted file mode 100755 index 094e37e..0000000 --- a/post/framework-server/bios2.png +++ /dev/null diff --git a/post/framework-server/bios2.webp b/post/framework-server/bios2.webp Binary files differnew file mode 100644 index 0000000..fc8c1a1 --- /dev/null +++ b/post/framework-server/bios2.webp diff --git a/post/framework-server/case.jpg b/post/framework-server/case.jpg Binary files differdeleted file mode 100755 index a40c172..0000000 --- a/post/framework-server/case.jpg +++ /dev/null diff --git a/post/framework-server/case.webp b/post/framework-server/case.webp Binary files differnew file mode 100644 index 0000000..7cdb0a5 --- /dev/null +++ b/post/framework-server/case.webp diff --git a/post/framework-server/dmz.png b/post/framework-server/dmz.png Binary files differdeleted file mode 100755 index 372c12b..0000000 --- a/post/framework-server/dmz.png +++ /dev/null diff --git a/post/framework-server/dmz.webp b/post/framework-server/dmz.webp Binary files differnew file mode 100644 index 0000000..6443838 --- /dev/null +++ b/post/framework-server/dmz.webp diff --git a/post/framework-server/dns.jpg b/post/framework-server/dns.jpg Binary files differdeleted file mode 100755 index 0b32528..0000000 --- a/post/framework-server/dns.jpg +++ /dev/null diff --git a/post/framework-server/dns.webp b/post/framework-server/dns.webp Binary files differnew file mode 100644 index 0000000..16195fd --- /dev/null +++ b/post/framework-server/dns.webp diff --git a/post/framework-server/dri.png b/post/framework-server/dri.png Binary files differdeleted file mode 100755 index a578c79..0000000 --- a/post/framework-server/dri.png +++ /dev/null diff --git a/post/framework-server/dri.webp b/post/framework-server/dri.webp Binary files differnew file mode 100644 index 0000000..17f2490 --- /dev/null +++ b/post/framework-server/dri.webp diff --git a/post/framework-server/error.jpg b/post/framework-server/error.jpg Binary files differdeleted file mode 100755 index 429eef8..0000000 --- a/post/framework-server/error.jpg +++ /dev/null diff --git a/post/framework-server/error.webp b/post/framework-server/error.webp Binary files differnew file mode 100644 index 0000000..05b277b --- /dev/null +++ b/post/framework-server/error.webp diff --git a/post/framework-server/eth.jpg b/post/framework-server/eth.jpg Binary files differdeleted file mode 100755 index f8ad12a..0000000 --- a/post/framework-server/eth.jpg +++ /dev/null diff --git a/post/framework-server/eth.webp b/post/framework-server/eth.webp Binary files differnew file mode 100644 index 0000000..79db1b2 --- /dev/null +++ b/post/framework-server/eth.webp diff --git a/post/framework-server/fail.png b/post/framework-server/fail.png Binary files differdeleted file mode 100755 index f0e06db..0000000 --- a/post/framework-server/fail.png +++ /dev/null diff --git a/post/framework-server/fail.webp b/post/framework-server/fail.webp Binary files differnew file mode 100644 index 0000000..a35dbe9 --- /dev/null +++ b/post/framework-server/fail.webp diff --git a/post/framework-server/feelsbadman.png b/post/framework-server/feelsbadman.png Binary files differdeleted file mode 100755 index b1c2a26..0000000 --- a/post/framework-server/feelsbadman.png +++ /dev/null diff --git a/post/framework-server/feelsbadman.webp b/post/framework-server/feelsbadman.webp Binary files differnew file mode 100644 index 0000000..841f190 --- /dev/null +++ b/post/framework-server/feelsbadman.webp diff --git a/post/framework-server/fix1.png b/post/framework-server/fix1.png Binary files differdeleted file mode 100755 index b36489e..0000000 --- a/post/framework-server/fix1.png +++ /dev/null diff --git a/post/framework-server/fix1.webp b/post/framework-server/fix1.webp Binary files differnew file mode 100644 index 0000000..87956c8 --- /dev/null +++ b/post/framework-server/fix1.webp diff --git a/post/framework-server/fix2.png b/post/framework-server/fix2.png Binary files differdeleted file mode 100755 index 5b64900..0000000 --- a/post/framework-server/fix2.png +++ /dev/null diff --git a/post/framework-server/fix2.webp b/post/framework-server/fix2.webp Binary files differnew file mode 100644 index 0000000..3f80c69 --- /dev/null +++ b/post/framework-server/fix2.webp diff --git a/post/framework-server/fix3.png b/post/framework-server/fix3.png Binary files differdeleted file mode 100755 index 9af2433..0000000 --- a/post/framework-server/fix3.png +++ /dev/null diff --git a/post/framework-server/fix3.webp b/post/framework-server/fix3.webp Binary files differnew file mode 100644 index 0000000..7beec7f --- /dev/null +++ b/post/framework-server/fix3.webp diff --git a/post/framework-server/fw1.png b/post/framework-server/fw1.png Binary files differdeleted file mode 100755 index 72a95ee..0000000 --- a/post/framework-server/fw1.png +++ /dev/null diff --git a/post/framework-server/fw1.webp b/post/framework-server/fw1.webp Binary files differnew file mode 100644 index 0000000..ba8c08b --- /dev/null +++ b/post/framework-server/fw1.webp diff --git a/post/framework-server/fw2.png b/post/framework-server/fw2.png Binary files differdeleted file mode 100755 index cec00e1..0000000 --- a/post/framework-server/fw2.png +++ /dev/null diff --git a/post/framework-server/fw2.webp b/post/framework-server/fw2.webp Binary files differnew file mode 100644 index 0000000..9e06a58 --- /dev/null +++ b/post/framework-server/fw2.webp diff --git a/post/framework-server/imp.png b/post/framework-server/imp.png Binary files differdeleted file mode 100755 index c11b806..0000000 --- a/post/framework-server/imp.png +++ /dev/null diff --git a/post/framework-server/imp.webp b/post/framework-server/imp.webp Binary files differnew file mode 100644 index 0000000..373a728 --- /dev/null +++ b/post/framework-server/imp.webp diff --git a/post/framework-server/lab.png b/post/framework-server/lab.png Binary files differdeleted file mode 100755 index 6591a8b..0000000 --- a/post/framework-server/lab.png +++ /dev/null diff --git a/post/framework-server/lab.webp b/post/framework-server/lab.webp Binary files differnew file mode 100644 index 0000000..e023533 --- /dev/null +++ b/post/framework-server/lab.webp diff --git a/post/framework-server/lan.png b/post/framework-server/lan.png Binary files differdeleted file mode 100755 index 461d598..0000000 --- a/post/framework-server/lan.png +++ /dev/null diff --git a/post/framework-server/lan.webp b/post/framework-server/lan.webp Binary files differnew file mode 100644 index 0000000..1a6d533 --- /dev/null +++ b/post/framework-server/lan.webp diff --git a/post/framework-server/mistakes.jpg b/post/framework-server/mistakes.jpg Binary files differdeleted file mode 100755 index d4b2e12..0000000 --- a/post/framework-server/mistakes.jpg +++ /dev/null diff --git a/post/framework-server/mistakes.webp b/post/framework-server/mistakes.webp Binary files differnew file mode 100644 index 0000000..ad82826 --- /dev/null +++ b/post/framework-server/mistakes.webp diff --git a/post/framework-server/nas.jpg b/post/framework-server/nas.jpg Binary files differdeleted file mode 100755 index 75f5251..0000000 --- a/post/framework-server/nas.jpg +++ /dev/null diff --git a/post/framework-server/nas.webp b/post/framework-server/nas.webp Binary files differnew file mode 100644 index 0000000..dbbafff --- /dev/null +++ b/post/framework-server/nas.webp diff --git a/post/framework-server/net1.png b/post/framework-server/net1.png Binary files differdeleted file mode 100755 index a0a4eff..0000000 --- a/post/framework-server/net1.png +++ /dev/null diff --git a/post/framework-server/net1.webp b/post/framework-server/net1.webp Binary files differnew file mode 100644 index 0000000..ee36709 --- /dev/null +++ b/post/framework-server/net1.webp diff --git a/post/framework-server/net2.png b/post/framework-server/net2.png Binary files differdeleted file mode 100755 index c5ad118..0000000 --- a/post/framework-server/net2.png +++ /dev/null diff --git a/post/framework-server/net2.webp b/post/framework-server/net2.webp Binary files differnew file mode 100644 index 0000000..6bd28fc --- /dev/null +++ b/post/framework-server/net2.webp diff --git a/post/framework-server/network.png b/post/framework-server/network.png Binary files differdeleted file mode 100755 index 1b1fba6..0000000 --- a/post/framework-server/network.png +++ /dev/null diff --git a/post/framework-server/network.webp b/post/framework-server/network.webp Binary files differnew file mode 100644 index 0000000..639f730 --- /dev/null +++ b/post/framework-server/network.webp diff --git a/post/framework-server/pbr.png b/post/framework-server/pbr.png Binary files differdeleted file mode 100755 index 2b1e330..0000000 --- a/post/framework-server/pbr.png +++ /dev/null diff --git a/post/framework-server/pbr.webp b/post/framework-server/pbr.webp Binary files differnew file mode 100644 index 0000000..0cc8497 --- /dev/null +++ b/post/framework-server/pbr.webp diff --git a/post/framework-server/pbr1.png b/post/framework-server/pbr1.png Binary files differdeleted file mode 100755 index 4d7f075..0000000 --- a/post/framework-server/pbr1.png +++ /dev/null diff --git a/post/framework-server/pbr1.webp b/post/framework-server/pbr1.webp Binary files differnew file mode 100644 index 0000000..8cd23ad --- /dev/null +++ b/post/framework-server/pbr1.webp diff --git a/post/framework-server/pbr2.png b/post/framework-server/pbr2.png Binary files differdeleted file mode 100755 index 0a07839..0000000 --- a/post/framework-server/pbr2.png +++ /dev/null diff --git a/post/framework-server/pbr2.webp b/post/framework-server/pbr2.webp Binary files differnew file mode 100644 index 0000000..6237339 --- /dev/null +++ b/post/framework-server/pbr2.webp diff --git a/post/framework-server/pfnet.png b/post/framework-server/pfnet.png Binary files differdeleted file mode 100755 index 67cc5f4..0000000 --- a/post/framework-server/pfnet.png +++ /dev/null diff --git a/post/framework-server/pfnet.webp b/post/framework-server/pfnet.webp Binary files differnew file mode 100644 index 0000000..46ec1ae --- /dev/null +++ b/post/framework-server/pfnet.webp diff --git a/post/framework-server/physical.png b/post/framework-server/physical.png Binary files differdeleted file mode 100755 index fc1cb81..0000000 --- a/post/framework-server/physical.png +++ /dev/null diff --git a/post/framework-server/physical.webp b/post/framework-server/physical.webp Binary files differnew file mode 100644 index 0000000..419a343 --- /dev/null +++ b/post/framework-server/physical.webp diff --git a/post/framework-server/port1.png b/post/framework-server/port1.png Binary files differdeleted file mode 100755 index 1b72ab1..0000000 --- a/post/framework-server/port1.png +++ /dev/null diff --git a/post/framework-server/port1.webp b/post/framework-server/port1.webp Binary files differnew file mode 100644 index 0000000..48ed547 --- /dev/null +++ b/post/framework-server/port1.webp diff --git a/post/framework-server/port2.png b/post/framework-server/port2.png Binary files differdeleted file mode 100755 index 37ff887..0000000 --- a/post/framework-server/port2.png +++ /dev/null diff --git a/post/framework-server/port2.webp b/post/framework-server/port2.webp Binary files differnew file mode 100644 index 0000000..de38fa1 --- /dev/null +++ b/post/framework-server/port2.webp diff --git a/post/framework-server/rproxy.png b/post/framework-server/rproxy.png Binary files differdeleted file mode 100755 index 0d3f0bf..0000000 --- a/post/framework-server/rproxy.png +++ /dev/null diff --git a/post/framework-server/rproxy.webp b/post/framework-server/rproxy.webp Binary files differnew file mode 100644 index 0000000..43f6dbd --- /dev/null +++ b/post/framework-server/rproxy.webp diff --git a/post/framework-server/ups.jpg b/post/framework-server/ups.jpg Binary files differdeleted file mode 100755 index 4cd7aee..0000000 --- a/post/framework-server/ups.jpg +++ /dev/null diff --git a/post/framework-server/ups.webp b/post/framework-server/ups.webp Binary files differnew file mode 100644 index 0000000..3d2cc83 --- /dev/null +++ b/post/framework-server/ups.webp diff --git a/post/framework-server/vps.png b/post/framework-server/vps.png Binary files differdeleted file mode 100755 index 7392495..0000000 --- a/post/framework-server/vps.png +++ /dev/null diff --git a/post/framework-server/vps.webp b/post/framework-server/vps.webp Binary files differnew file mode 100644 index 0000000..8b3cc28 --- /dev/null +++ b/post/framework-server/vps.webp diff --git a/post/framework-server/wg.png b/post/framework-server/wg.png Binary files differdeleted file mode 100755 index 18896a0..0000000 --- a/post/framework-server/wg.png +++ /dev/null diff --git a/post/framework-server/wg.webp b/post/framework-server/wg.webp Binary files differnew file mode 100644 index 0000000..251b3db --- /dev/null +++ b/post/framework-server/wg.webp diff --git a/post/framework-server/wrtnet.png b/post/framework-server/wrtnet.png Binary files differdeleted file mode 100755 index 73d435d..0000000 --- a/post/framework-server/wrtnet.png +++ /dev/null diff --git a/post/framework-server/wrtnet.webp b/post/framework-server/wrtnet.webp Binary files differnew file mode 100644 index 0000000..808bdbf --- /dev/null +++ b/post/framework-server/wrtnet.webp diff --git a/post/framework-server/wrtnet2.png b/post/framework-server/wrtnet2.png Binary files differdeleted file mode 100755 index 34cd6b9..0000000 --- a/post/framework-server/wrtnet2.png +++ /dev/null diff --git a/post/framework-server/wrtnet2.webp b/post/framework-server/wrtnet2.webp Binary files differnew file mode 100644 index 0000000..f01f948 --- /dev/null +++ b/post/framework-server/wrtnet2.webp diff --git a/post/framework-server/wtf.jpg b/post/framework-server/wtf.jpg Binary files differdeleted file mode 100755 index 995fefe..0000000 --- a/post/framework-server/wtf.jpg +++ /dev/null diff --git a/post/framework-server/wtf.webp b/post/framework-server/wtf.webp Binary files differnew file mode 100644 index 0000000..320bfe6 --- /dev/null +++ b/post/framework-server/wtf.webp diff --git a/post/listing-my-fav-advice.typ b/post/listing-my-fav-advice.typ index 5984f97..63c7608 100644 --- a/post/listing-my-fav-advice.typ +++ b/post/listing-my-fav-advice.typ @@ -10,8 +10,8 @@ me. columns: 2, stroke: none, align: center, - img("listing-my-fav-advice/balance.jpg", alt: "balancing rocks"), - img("listing-my-fav-advice/indulgence.jpg", alt: "indulgence painting"), + img("listing-my-fav-advice/balance.webp", alt: "balancing rocks"), + img("listing-my-fav-advice/indulgence.webp", alt: "indulgence painting"), ) I first heard this one from Kia, my Jitsu instructor at U of T. The first part @@ -50,7 +50,7 @@ rushing? Maybe its time to re-evaluate some things in your life. = Don't worry so much about budgeting, focus on earning more. -#fig("listing-my-fav-advice/money.jpg", alt: "money bob ross") +#fig("listing-my-fav-advice/money.webp", alt: "money bob ross") This one is somewhat controversial. I heard it from John Hill on the #extlink("https://podcasts.apple.com/us/podcast/super-hoopers-an-nba-podcast/id1053263719")[Super @@ -72,7 +72,7 @@ saved or at the very least doing something actually enjoyable. = Never work for someone who you don't want to become. -#fig("listing-my-fav-advice/boss.jpg", alt: "boss", width: "50%") +#fig("listing-my-fav-advice/boss.webp", alt: "boss", width: "50%") This one has helped me substantially in my career. I believe I heard it from someone on Shark Tank (Mark Cuban? Mr. Wonderful? IIRC). More important than diff --git a/post/listing-my-fav-advice/balance.jpg b/post/listing-my-fav-advice/balance.jpg Binary files differdeleted file mode 100755 index ee5050c..0000000 --- a/post/listing-my-fav-advice/balance.jpg +++ /dev/null diff --git a/post/listing-my-fav-advice/balance.webp b/post/listing-my-fav-advice/balance.webp Binary files differnew file mode 100644 index 0000000..3e9ee06 --- /dev/null +++ b/post/listing-my-fav-advice/balance.webp diff --git a/post/listing-my-fav-advice/boss.jpg b/post/listing-my-fav-advice/boss.jpg Binary files differdeleted file mode 100755 index 631a78a..0000000 --- a/post/listing-my-fav-advice/boss.jpg +++ /dev/null diff --git a/post/listing-my-fav-advice/boss.webp b/post/listing-my-fav-advice/boss.webp Binary files differnew file mode 100644 index 0000000..5912bc5 --- /dev/null +++ b/post/listing-my-fav-advice/boss.webp diff --git a/post/listing-my-fav-advice/indulgence.jpg b/post/listing-my-fav-advice/indulgence.jpg Binary files differdeleted file mode 100755 index 446e3fb..0000000 --- a/post/listing-my-fav-advice/indulgence.jpg +++ /dev/null diff --git a/post/listing-my-fav-advice/indulgence.webp b/post/listing-my-fav-advice/indulgence.webp Binary files differnew file mode 100644 index 0000000..cd25f45 --- /dev/null +++ b/post/listing-my-fav-advice/indulgence.webp diff --git a/post/listing-my-fav-advice/money.jpg b/post/listing-my-fav-advice/money.jpg Binary files differdeleted file mode 100755 index 451ff7c..0000000 --- a/post/listing-my-fav-advice/money.jpg +++ /dev/null diff --git a/post/listing-my-fav-advice/money.webp b/post/listing-my-fav-advice/money.webp Binary files differnew file mode 100644 index 0000000..83f6ac2 --- /dev/null +++ b/post/listing-my-fav-advice/money.webp diff --git a/post/nas-upgrade.typ b/post/nas-upgrade.typ index 9b48839..500d7bc 100644 --- a/post/nas-upgrade.typ +++ b/post/nas-upgrade.typ @@ -15,7 +15,7 @@ I _probably_ have enough buffer to survive the initial few months, I certainly wish to do better than my current 2xHDD mirrored pool giving me ~4TB of storage. -#fig("nas-upgrade/oldnas.png", alt: "nas nas") +#fig("nas-upgrade/oldnas.webp", alt: "nas nas") = The Plan @@ -60,8 +60,8 @@ Wants: On eBay, I ended up checking out with: -#fig("nas-upgrade/nas-chassis.png", alt: "nas chassis") -#fig("nas-upgrade/ethernet.png", alt: "ethernet adapter") +#fig("nas-upgrade/nas-chassis.webp", alt: "nas chassis") +#fig("nas-upgrade/ethernet.webp", alt: "ethernet adapter") #table( columns: 2, @@ -80,7 +80,7 @@ means I am running on a single HDD for the remainder of the migration. With the free HDD, and my two spares, I get everything assembled, and set up a new Proxmox node with a ZFS pool from the UI using the 3 disks. -#fig("nas-upgrade/zfs-pool.png", alt: "proxmox zfs pool") +#fig("nas-upgrade/zfs-pool.webp", alt: "proxmox zfs pool") = Sync @@ -115,7 +115,7 @@ Before I can re-enable my services. I need to expose my datasets on Cockpit. I create a Debian LXC, and assign the generated MAC a static IP on my network. Other than that, I just make sure my container has the NFS feature enabled: -#fig("nas-upgrade/cockpit-lxc.png", alt: "cockpit lxc features") +#fig("nas-upgrade/cockpit-lxc.webp", alt: "cockpit lxc features") Setting up user permissions is a pain, but once done I expose the relevant NFS as well as Samba paths for my services - replicating my old NAS's shared paths. diff --git a/post/nas-upgrade/cockpit-lxc.png b/post/nas-upgrade/cockpit-lxc.png Binary files differdeleted file mode 100755 index a2a9363..0000000 --- a/post/nas-upgrade/cockpit-lxc.png +++ /dev/null diff --git a/post/nas-upgrade/cockpit-lxc.webp b/post/nas-upgrade/cockpit-lxc.webp Binary files differnew file mode 100644 index 0000000..f761969 --- /dev/null +++ b/post/nas-upgrade/cockpit-lxc.webp diff --git a/post/nas-upgrade/ethernet.png b/post/nas-upgrade/ethernet.png Binary files differdeleted file mode 100755 index f39110d..0000000 --- a/post/nas-upgrade/ethernet.png +++ /dev/null diff --git a/post/nas-upgrade/ethernet.webp b/post/nas-upgrade/ethernet.webp Binary files differnew file mode 100644 index 0000000..e2c0b2f --- /dev/null +++ b/post/nas-upgrade/ethernet.webp diff --git a/post/nas-upgrade/nas-chassis.png b/post/nas-upgrade/nas-chassis.png Binary files differdeleted file mode 100755 index 5d70b60..0000000 --- a/post/nas-upgrade/nas-chassis.png +++ /dev/null diff --git a/post/nas-upgrade/nas-chassis.webp b/post/nas-upgrade/nas-chassis.webp Binary files differnew file mode 100644 index 0000000..8de7753 --- /dev/null +++ b/post/nas-upgrade/nas-chassis.webp diff --git a/post/nas-upgrade/oldnas.png b/post/nas-upgrade/oldnas.png Binary files differdeleted file mode 100755 index 15ad609..0000000 --- a/post/nas-upgrade/oldnas.png +++ /dev/null diff --git a/post/nas-upgrade/oldnas.webp b/post/nas-upgrade/oldnas.webp Binary files differnew file mode 100644 index 0000000..065b7c9 --- /dev/null +++ b/post/nas-upgrade/oldnas.webp diff --git a/post/nas-upgrade/zfs-pool.png b/post/nas-upgrade/zfs-pool.png Binary files differdeleted file mode 100755 index ecf9605..0000000 --- a/post/nas-upgrade/zfs-pool.png +++ /dev/null diff --git a/post/nas-upgrade/zfs-pool.webp b/post/nas-upgrade/zfs-pool.webp Binary files differnew file mode 100644 index 0000000..6dcdaf3 --- /dev/null +++ b/post/nas-upgrade/zfs-pool.webp diff --git a/post/nixos-p1.typ b/post/nixos-p1.typ index 2d248c8..ca4a7d0 100644 --- a/post/nixos-p1.typ +++ b/post/nixos-p1.typ @@ -8,7 +8,7 @@ NixOS the "modern" way - Flakes + Home Manager. It doesn't help that Nix's official docs are very disjointed so hopefully this will fill in some gaps that I observed when setting it all up. -#fig("nixos-p1/fox.jpg", alt: "meme") +#fig("nixos-p1/fox.webp", alt: "meme") #quote(block: true)[ Warning: NixOS is not exactly beginner friendly - you should have @@ -33,7 +33,7 @@ traditional distro. For example, NixOS will present you with all previous "builds" at boot time for you to revert to in case something gets messed up. -#fig("nixos-p1/boot.png", alt: "boot prompt") +#fig("nixos-p1/boot.webp", alt: "boot prompt") = Things I want to explore as part of this exercise: @@ -52,7 +52,7 @@ you to revert to in case something gets messed up. = Spoilers! (End result) -#fig("nixos-p1/rice.png", alt: "my rice") +#fig("nixos-p1/rice.webp", alt: "my rice") (Probably too ugly for r/unixporn, but works for me :) @@ -346,7 +346,7 @@ sudo make install `wbg` is a simple background setter for Wayland......aaaand BAM! -#fig("nixos-p1/dwl.png", alt: "dwl pic") +#fig("nixos-p1/dwl.webp", alt: "dwl pic") == Terminal diff --git a/post/nixos-p1/boot.png b/post/nixos-p1/boot.png Binary files differdeleted file mode 100755 index 4e3d972..0000000 --- a/post/nixos-p1/boot.png +++ /dev/null diff --git a/post/nixos-p1/boot.webp b/post/nixos-p1/boot.webp Binary files differnew file mode 100644 index 0000000..ed77817 --- /dev/null +++ b/post/nixos-p1/boot.webp diff --git a/post/nixos-p1/dwl.png b/post/nixos-p1/dwl.png Binary files differdeleted file mode 100755 index 8ecbe4d..0000000 --- a/post/nixos-p1/dwl.png +++ /dev/null diff --git a/post/nixos-p1/dwl.webp b/post/nixos-p1/dwl.webp Binary files differnew file mode 100644 index 0000000..89f7245 --- /dev/null +++ b/post/nixos-p1/dwl.webp diff --git a/post/nixos-p1/fox.jpg b/post/nixos-p1/fox.jpg Binary files differdeleted file mode 100755 index 3ace57f..0000000 --- a/post/nixos-p1/fox.jpg +++ /dev/null diff --git a/post/nixos-p1/fox.webp b/post/nixos-p1/fox.webp Binary files differnew file mode 100644 index 0000000..4f9c703 --- /dev/null +++ b/post/nixos-p1/fox.webp diff --git a/post/nixos-p1/rice.png b/post/nixos-p1/rice.png Binary files differdeleted file mode 100755 index 4fd97cf..0000000 --- a/post/nixos-p1/rice.png +++ /dev/null diff --git a/post/nixos-p1/rice.webp b/post/nixos-p1/rice.webp Binary files differnew file mode 100644 index 0000000..e707a20 --- /dev/null +++ b/post/nixos-p1/rice.webp diff --git a/post/programming-as-art.typ b/post/programming-as-art.typ index ef80e33..e4e2fd6 100644 --- a/post/programming-as-art.typ +++ b/post/programming-as-art.typ @@ -15,7 +15,7 @@ for _ in range(1, 1001): At the time it felt like having the #extlink("https://harry-potter-compendium.fandom.com/wiki/Elder_Wand")[Elder Wand]. -#fig("programming-as-art/wand.png", alt: "Dumbledore with Elder Wand pic") +#fig("programming-as-art/wand.webp", alt: "Dumbledore with Elder Wand pic") But there was more to our lesson. The TA then asks us to put our newly found power to use by computing the sum of 1 to 100. Of course, it was a natural @@ -41,7 +41,7 @@ _linearly_ with the input size. Later we would formalize this to $cal(O)(n)$ The TA hinted that there is a better way, and that we already know of the better way in math. -#fig("programming-as-art/teaching.png", alt: "Teaching meme") +#fig("programming-as-art/teaching.webp", alt: "Teaching meme") $ S_n = sum_(i=1)^n i = 1 + 2 + ... + n = (n (n + 1)) / 2 $ @@ -60,7 +60,7 @@ instructions. Crucially, it does not depend on the size of the input like our previous solution, thus *no matter the input, it always takes 3 instructions to compute!* This is a HUGE win! -#fig("programming-as-art/math.png", alt: "Math meme") +#fig("programming-as-art/math.webp", alt: "Math meme") Later we would formalize this to $cal(O)(1)$, or _constant_ scaling. @@ -89,7 +89,7 @@ When I reflect on moments like this, it reminds me that there is emergent elegance and beauty even in the seemingly arbitrary sequence of symbols that is `code`. -#fig("programming-as-art/code.png", alt: "The Matrix code going by image") +#fig("programming-as-art/code.webp", alt: "The Matrix code going by image") Programming is not quite as _objective_ as people would have you believe. There are trade-offs to each solution, and which solution you prefer relect on the diff --git a/post/programming-as-art/code.png b/post/programming-as-art/code.png Binary files differdeleted file mode 100755 index 30c3522..0000000 --- a/post/programming-as-art/code.png +++ /dev/null diff --git a/post/programming-as-art/code.webp b/post/programming-as-art/code.webp Binary files differnew file mode 100644 index 0000000..2455aee --- /dev/null +++ b/post/programming-as-art/code.webp diff --git a/post/programming-as-art/math.png b/post/programming-as-art/math.png Binary files differdeleted file mode 100755 index bbdc372..0000000 --- a/post/programming-as-art/math.png +++ /dev/null diff --git a/post/programming-as-art/math.webp b/post/programming-as-art/math.webp Binary files differnew file mode 100644 index 0000000..3c3993a --- /dev/null +++ b/post/programming-as-art/math.webp diff --git a/post/programming-as-art/teaching.png b/post/programming-as-art/teaching.png Binary files differdeleted file mode 100755 index 9bf5dce..0000000 --- a/post/programming-as-art/teaching.png +++ /dev/null diff --git a/post/programming-as-art/teaching.webp b/post/programming-as-art/teaching.webp Binary files differnew file mode 100644 index 0000000..4304a7e --- /dev/null +++ b/post/programming-as-art/teaching.webp diff --git a/post/programming-as-art/wand.png b/post/programming-as-art/wand.png Binary files differdeleted file mode 100755 index 5eefc9c..0000000 --- a/post/programming-as-art/wand.png +++ /dev/null diff --git a/post/programming-as-art/wand.webp b/post/programming-as-art/wand.webp Binary files differnew file mode 100644 index 0000000..0a65028 --- /dev/null +++ b/post/programming-as-art/wand.webp diff --git a/post/programs/dwl.png b/post/programs/dwl.png Binary files differdeleted file mode 100755 index 8ecbe4d..0000000 --- a/post/programs/dwl.png +++ /dev/null diff --git a/post/programs/dwl.webp b/post/programs/dwl.webp Binary files differnew file mode 100644 index 0000000..89f7245 --- /dev/null +++ b/post/programs/dwl.webp diff --git a/post/self-host.typ b/post/self-host.typ index 0fed382..171cc33 100644 --- a/post/self-host.typ +++ b/post/self-host.typ @@ -5,7 +5,7 @@ My reasons for self-hosting. = Digital freedom/independence -#fig("self-host/freedom.jpg", alt: "Freedom pic") +#fig("self-host/freedom.webp", alt: "Freedom pic") To put it simply, if you use a service such as Lastpass, iCloud, Dropbox, GDrive, OneDrive, etc. to store your data, *you do not own it*. @@ -36,14 +36,14 @@ Normies often ask me some variation of: - Since I'm aware of targeted advertising, it won't work on me, so why should I care if corp. X has my data? -#fig("self-host/why.jpg", alt: "my pic", width: "75%") +#fig("self-host/why.webp", alt: "my pic", width: "75%") To such questions, I follow-up with: #quote(block: true)[*Do you want to contribute to a dystopian (#extlink("https://en.wikipedia.org/wiki/Orwellian")[Orwellian]) future?*] -#fig("self-host/police.jpg", alt: "thought police", width: "75%") +#fig("self-host/police.webp", alt: "thought police", width: "75%") If your answer is _yes_, then no need to read further, the following will not change your mind. @@ -79,7 +79,7 @@ few recent examples: think this is morally acceptable, and is primary reason I refuse to participate in social-media platforms. - #fig("self-host/6imv05.jpg", alt: "Depression") + #fig("self-host/6imv05.webp", alt: "Depression") You could say "well that's due to bad parenting", but the point remains that more and more of the digital world is having _real world_ negative consequences @@ -96,7 +96,7 @@ regardless of your individual participation level. Another example: Regardless of your political affiliation, it should worry you that this _can_ happen. - #fig("self-host/elections.jpg", alt: "Elections") + #fig("self-host/elections.webp", alt: "Elections") To summarize, it might not be a problem if individuals disregard their privacy at the individual level, but in aggregate, a _population-wide_ disregard has @@ -134,5 +134,5 @@ Start by *valuing your privacy*. Then, follow some of these tips to _say no..._ limit your usage. - Support government policies that respect user-privacy. -#fig("self-host/office.png", alt: "office pic", width: "75%") +#fig("self-host/office.webp", alt: "office pic", width: "75%") ] diff --git a/post/self-host/6imv05.jpg b/post/self-host/6imv05.jpg Binary files differdeleted file mode 100755 index d042d7a..0000000 --- a/post/self-host/6imv05.jpg +++ /dev/null diff --git a/post/self-host/6imv05.webp b/post/self-host/6imv05.webp Binary files differnew file mode 100644 index 0000000..bdf703c --- /dev/null +++ b/post/self-host/6imv05.webp diff --git a/post/self-host/elections.jpg b/post/self-host/elections.jpg Binary files differdeleted file mode 100755 index ac4ac96..0000000 --- a/post/self-host/elections.jpg +++ /dev/null diff --git a/post/self-host/elections.webp b/post/self-host/elections.webp Binary files differnew file mode 100644 index 0000000..dcb1c64 --- /dev/null +++ b/post/self-host/elections.webp diff --git a/post/self-host/freedom.jpg b/post/self-host/freedom.jpg Binary files differdeleted file mode 100755 index d62048a..0000000 --- a/post/self-host/freedom.jpg +++ /dev/null diff --git a/post/self-host/freedom.webp b/post/self-host/freedom.webp Binary files differnew file mode 100644 index 0000000..8474288 --- /dev/null +++ b/post/self-host/freedom.webp diff --git a/post/self-host/office.png b/post/self-host/office.png Binary files differdeleted file mode 100755 index 9cff3ce..0000000 --- a/post/self-host/office.png +++ /dev/null diff --git a/post/self-host/office.webp b/post/self-host/office.webp Binary files differnew file mode 100644 index 0000000..925779a --- /dev/null +++ b/post/self-host/office.webp diff --git a/post/self-host/police.jpg b/post/self-host/police.jpg Binary files differdeleted file mode 100755 index dde2b44..0000000 --- a/post/self-host/police.jpg +++ /dev/null diff --git a/post/self-host/police.webp b/post/self-host/police.webp Binary files differnew file mode 100644 index 0000000..361c466 --- /dev/null +++ b/post/self-host/police.webp diff --git a/post/self-host/why.jpg b/post/self-host/why.jpg Binary files differdeleted file mode 100755 index eda5402..0000000 --- a/post/self-host/why.jpg +++ /dev/null diff --git a/post/self-host/why.webp b/post/self-host/why.webp Binary files differnew file mode 100644 index 0000000..d693f07 --- /dev/null +++ b/post/self-host/why.webp |
