aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--index.typ3
-rw-r--r--main.typ5
-rw-r--r--post/a-rack-finally.typ99
-rw-r--r--post/a-rack-finally/24hlater.pngbin0 -> 1105465 bytes
-rw-r--r--post/a-rack-finally/annotated.pngbin0 -> 698589 bytes
-rw-r--r--post/a-rack-finally/final.jpgbin0 -> 766677 bytes
-rw-r--r--post/a-rack-finally/powering-on.jpgbin0 -> 635529 bytes
-rw-r--r--post/a-rack-finally/rack-rails.jpgbin0 -> 853580 bytes
-rw-r--r--post/a-rack-finally/rack.jpgbin0 -> 717985 bytes
-rw-r--r--post/a-rack-finally/rear-view.jpgbin0 -> 605892 bytes
-rw-r--r--post/a-rack-finally/side-vew.jpgbin0 -> 703315 bytes
-rw-r--r--post/a-rack-finally/survived.pngbin0 -> 205740 bytes
-rw-r--r--post/a-rack-finally/switch-and-patch-panel.jpgbin0 -> 633606 bytes
-rw-r--r--post/a-rack-finally/switch-reset.jpgbin0 -> 675291 bytes
-rw-r--r--post/a-rack-finally/tldr.pngbin0 -> 1248163 bytes
-rw-r--r--post/programs.typ36
-rw-r--r--site.typ7
-rw-r--r--software.typ53
18 files changed, 144 insertions, 59 deletions
diff --git a/index.typ b/index.typ
index 2fb5b2f..1cf7e27 100644
--- a/index.typ
+++ b/index.typ
@@ -7,6 +7,7 @@ linguistics enjoyer, social media hater, disciple of the contrarian stack.
Posts I have written, newest first:
+- #pageref("post/a-rack-finally")
- #pageref("post/framework-server-p2")
- #pageref("post/nas-upgrade")
- #pageref("post/listing-my-fav-advice")
@@ -15,4 +16,6 @@ Posts I have written, newest first:
- #pageref("post/programming-as-art")
- #pageref("post/self-host")
- #pageref("post/programs")
+
+The #pagelink("software")[Software] page lists some of my projects.
]
diff --git a/main.typ b/main.typ
index 1ed62ff..a7f470a 100644
--- a/main.typ
+++ b/main.typ
@@ -9,6 +9,7 @@
#import "/software.typ" as software-page
#import "/contact.typ" as contact-page
+#import "/post/a-rack-finally.typ" as a-rack-finally
#import "/post/framework-server-p2.typ" as post-framework-server-p2
#import "/post/nas-upgrade.typ" as post-nas-upgrade
#import "/post/listing-my-fav-advice.typ" as post-listing-my-fav-advice
@@ -32,6 +33,10 @@
#page("contact", site-info, contact-page.doc)
] <contact>
+#document("post/a-rack-finally.html", title: title-for("post/a-rack-finally"))[
+ #post-page("post/a-rack-finally", site-info, a-rack-finally.doc)
+] <post-a-rack-finally>
+
#document("post/framework-server-p2.html", title: title-for("post/framework-server-p2"))[
#post-page("post/framework-server-p2", site-info, post-framework-server-p2.doc)
] <post-framework-server-p2>
diff --git a/post/a-rack-finally.typ b/post/a-rack-finally.typ
new file mode 100644
index 0000000..8cbf084
--- /dev/null
+++ b/post/a-rack-finally.typ
@@ -0,0 +1,99 @@
+#import "/global/common.typ": *
+
+#let doc = [
+Migrating my home-lab to a more permanent home.
+
+= tldr;
+
+#fig("a-rack-finally/tldr.png", alt: "before and after pic")
+
+Mostly.
+
+= motivation
+
+This is what we are working with. It's a "rack" split into
+two...lets be generous and call it _zones_.
+If you squint hard-enough you can make out a chair that has the first
+zone, and that shoe-rack houses the second zone.
+
+#quote(block: true)[
+context: When I lived in a tiny apartment, the shoe-rack was the whole thing.
+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")
+
++ 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
+ I need to get into my NAS.
+
++ I have 24P PoE switch sitting in box that I have no desire
+ to introduce to this mess. Would be nice to use it to try out some home
+ security camera stuff (also out of my budget).
+
++ It's an eye-sore. Literally, every time I venture into my basement, I think to
+ myself: _got to fix that!_
+
+= build
+
+So I picked up this 9U adjustable-depth rack, with two rack-shelves and casters from ebay
+for around a \$100.
+Though technically possible, it's a PITA to adjust.
+Would not recommend doing it more than once.
+
+I adjusted it to fit the length of my rack-rails kit for my NAS.
+Fortunately, this length gives me _just_ enough clearance to rack
+mount two rack-shelves back-to-back. More on this later.
+
+#quote(block: true)[
+ I had already measured my stuff prior to purchasing the rack.
+]
+
+#fig("a-rack-finally/rack.jpg", alt: "my new rack assembled")
+
+Its cheap, but sturdy enough once assembled. It will do the job for now.
+
+= lift & shift
+
+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")
+
+After some wrangling with the console port, I got it configured.
+
+#fig("a-rack-finally/switch-reset.jpg", 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")
+
+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.")
+
+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.")
+
+In hindsight, I probably should've gone with a 15U :)
+
+= final
+
+Ended the day with this.
+
+#fig("a-rack-finally/final.jpg", 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")
+
+And...oh well.
+
+#fig("a-rack-finally/24hlater.png", alt: "final final")
+
+]
diff --git a/post/a-rack-finally/24hlater.png b/post/a-rack-finally/24hlater.png
new file mode 100644
index 0000000..393c550
--- /dev/null
+++ b/post/a-rack-finally/24hlater.png
Binary files differ
diff --git a/post/a-rack-finally/annotated.png b/post/a-rack-finally/annotated.png
new file mode 100644
index 0000000..e3ecc28
--- /dev/null
+++ b/post/a-rack-finally/annotated.png
Binary files differ
diff --git a/post/a-rack-finally/final.jpg b/post/a-rack-finally/final.jpg
new file mode 100644
index 0000000..2366a1c
--- /dev/null
+++ b/post/a-rack-finally/final.jpg
Binary files differ
diff --git a/post/a-rack-finally/powering-on.jpg b/post/a-rack-finally/powering-on.jpg
new file mode 100644
index 0000000..2872e7f
--- /dev/null
+++ b/post/a-rack-finally/powering-on.jpg
Binary files differ
diff --git a/post/a-rack-finally/rack-rails.jpg b/post/a-rack-finally/rack-rails.jpg
new file mode 100644
index 0000000..b951ea5
--- /dev/null
+++ b/post/a-rack-finally/rack-rails.jpg
Binary files differ
diff --git a/post/a-rack-finally/rack.jpg b/post/a-rack-finally/rack.jpg
new file mode 100644
index 0000000..afb86b2
--- /dev/null
+++ b/post/a-rack-finally/rack.jpg
Binary files differ
diff --git a/post/a-rack-finally/rear-view.jpg b/post/a-rack-finally/rear-view.jpg
new file mode 100644
index 0000000..9912dda
--- /dev/null
+++ b/post/a-rack-finally/rear-view.jpg
Binary files differ
diff --git a/post/a-rack-finally/side-vew.jpg b/post/a-rack-finally/side-vew.jpg
new file mode 100644
index 0000000..c65aa81
--- /dev/null
+++ b/post/a-rack-finally/side-vew.jpg
Binary files differ
diff --git a/post/a-rack-finally/survived.png b/post/a-rack-finally/survived.png
new file mode 100644
index 0000000..ac85cca
--- /dev/null
+++ b/post/a-rack-finally/survived.png
Binary files differ
diff --git a/post/a-rack-finally/switch-and-patch-panel.jpg b/post/a-rack-finally/switch-and-patch-panel.jpg
new file mode 100644
index 0000000..f2a4480
--- /dev/null
+++ b/post/a-rack-finally/switch-and-patch-panel.jpg
Binary files differ
diff --git a/post/a-rack-finally/switch-reset.jpg b/post/a-rack-finally/switch-reset.jpg
new file mode 100644
index 0000000..d71e522
--- /dev/null
+++ b/post/a-rack-finally/switch-reset.jpg
Binary files differ
diff --git a/post/a-rack-finally/tldr.png b/post/a-rack-finally/tldr.png
new file mode 100644
index 0000000..0322a34
--- /dev/null
+++ b/post/a-rack-finally/tldr.png
Binary files differ
diff --git a/post/programs.typ b/post/programs.typ
index fb675f7..68f15ea 100644
--- a/post/programs.typ
+++ b/post/programs.typ
@@ -16,7 +16,7 @@ fact with much consternation) or looking at maps.
== Software I Use
-=== OS Distribution
+=== OS Distribution - Server
#extlink("https://nixos.org/")[NixOS]. NixOS is an immutable OS where you are
only allowed to modify the system via declarative config files.
@@ -28,38 +28,34 @@ I did like Debian, and Fedora as well.
You can find my configs #extlink("https://gitlab.com/kdam0/dotfiles-nix")[here].
There is a dedicated #pagelink("post/nixos-p1")[post] about this.
-=== Desktop Environment
+=== OS Distribution - Desktop/Laptop
-I've settled on #extlink("https://github.com/djpohly/dwl")[DWL] after many
-years of hopping. Its clean, functional, and extremely light.
+Fedora.
-Prior to this, I've used Bsmpw + Sxhkd, i3, Gnome, KDE Plasma etc. I'm glad
-these exist and people get use out of it, but for now I do not miss it.
-#fig("programs/dwl.png", alt: "DWL")
+=== OS Distribution - Mobile
-=== Text Editor
+GrapheneOS.
-#extlink("https://neovim.io/")[(neo)vim]. Less of a text editor and more of a
-lifestyle. Check out my dotfiles for this. No, I'm not going to ever switch to
-emacs.
+=== Desktop Environment
-#fig("https://neovim.io/images/showcase/telescope_helptags.png", alt: "Neovim")
+Gnome. It's fine.
+
+=== Text Editor
+
+#extlink("https://helix-editor.com/")[Helix].
+Think of it like batteries included (neo)vim.
+No, I'm not going to ever switch to emacs.
=== Web Browser
#extlink("https://www.mozilla.org/en-US/firefox/features/")[Firefox] /
-#extlink("https://brave.com")[Brave] /
-#extlink("https://vivaldi.com")[Vivaldi]. I have tried Chromium, Qutebrowser in
-the past.
+#extlink("https://helium.computer/")[Helium] / the past.
=== File Manager
-#extlink("https://github.com/ranger/ranger")[ranger]. Yes, I've tried `nnn` and
-others. Yes I know its not the fastest, but something about Ranger makes me
-keep coming back to it.
-
-#fig("https://raw.githubusercontent.com/ranger/ranger-assets/master/screenshots/twopane.png", alt: "ranger")
+#extlink("https://yazi-rs.github.io/")[yazi]. Yes, I've tried `nnn` and
+others.
== Where can I find good software options?
diff --git a/site.typ b/site.typ
index c36ef3c..1c65b48 100644
--- a/site.typ
+++ b/site.typ
@@ -10,6 +10,13 @@
),
contact: (title: "Contact"),
+ "post/a-rack-finally": (
+ title: "A Rack, finally!",
+ long-title: "A Rack, finally!",
+ date: "2026-07-28",
+ description: "A permanent home for my home-lab.",
+ hidden: true,
+ ),
"post/framework-server-p2": (
title: "Framework Laptop Again",
long-title: "Letting my Framework 13 be a laptop again",
diff --git a/software.typ b/software.typ
index bd3c50e..ff50ff6 100644
--- a/software.typ
+++ b/software.typ
@@ -5,7 +5,7 @@
#let doc = [
Here you can find a list of my note-worthy public repositories, all hosted
- on #extlink("https://gitlab.com/kdam0/")[GitLab].
+ on #extlink("https://gitlab.com/users/kdam0/projects")[GitLab].
#show list: prev => html.ul(class: "biglist", {
for c in prev.children {
@@ -14,6 +14,13 @@
})
-
+ = home-lab
+ #description[
+ My Nix, Terraform, Ansible repository for self-hosting,
+ as started in #pagelink("post/framework-server")[this post].
+ ]
+ #source("https://gitlab.com/kdam0/home-lab/")
+ -
= nixdots
#description[
My dotfiles for the Nix ecosystem, as started in
@@ -21,49 +28,17 @@
]
#source("https://gitlab.com/kdam0/dotfiles-nix")
-
- = home-lab
- #description[
- My Terraform, Ansible repository for self-hosting, as described in
- #pagelink("post/framework-server")[this post].
- ]
- #source("https://gitlab.com/kdam0/home-lab")
- -
= nccli
#description[
- A Docker-ized Golang CLI for CRUD ops for Namecheap's DNS settings.
+ A Go CLI for managing DNS on Namecheap.
]
#source("https://gitlab.com/kdam0/nccli")
-
- = vps
- #description[
- How I implement #pagelink("post/self-host")[self-hosting], including
- my DIY ZFS backed NAS setup.
- ]
- #source("https://gitlab.com/kdam0/vps")
- -
- = go-druid-mysql-influx
- #description[
- A fast, containerized cron script that interacts with Druid, MySql,
- and Influxdb written in Go, with basic unit testing.
- ]
- #source("https://gitlab.com/kdam0/go-druid-mysql-influx")
- -
- = devops-api
- #description[
- A containerized, highly modular REST API that writes to Influxdb.
- ]
- #source("https://gitlab.com/kdam0/devops-api")
- -
- = slack-to-teams
- #description[
- A Python script to migrate Slack exports to MS Teams messages.
- ]
- #source("https://gitlab.com/kdam0/slack-to-teams")
- -
- = random-shell-helpers
+ = namemydragon.lol
#description[
- A small collection of helper scripts that I used frequently for
- random things.
+ A western themed meme site for identifying your dragon
+ from the Game of Thrones universe.
+ #extlink("https://namemydragon.lol")[Try it] and turn on your sound!
]
- #source("https://gitlab.com/kdam0/random-shell-helpers")
+ #source("https://gitlab.com/kdam0/namemydragon")
]