Commit 214c9eb07e

214c9eb07eb78e9cc02d18790400240e01bd2baa

parent: ce37489771

Unsigned

cmc <hello@cleberg.net> · 2025-05-01 02:51 UTC

update img links

Layout: unified · split

content/blog/2020-12-29-zork.org +1 −1
@@ -32,7 +32,7 @@ as it was truly intended, you should try to play it without using the
32map. 32map.
33 33
34#+caption: Zork Map 34#+caption: Zork Map
35[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20201229-zork/zork_map.jpg]] 35[[https://img.cleberg.net/blog/20201229-zork/zork_map.jpg]]
36 36
37/[[https://www.filfre.net/2012/01/exploring-zork-part-1/][Map Source]]/ 37/[[https://www.filfre.net/2012/01/exploring-zork-part-1/][Map Source]]/
38 38
content/blog/2021-03-28-vaporwave-vs-outrun.org +6 −6
@@ -16,12 +16,12 @@ Vaporwave: the results include *a lot* of Outrun-themed images. You'll
16find a similar trend almost everywhere. 16find a similar trend almost everywhere.
17 17
18#+caption: Vaporwave Search Results 18#+caption: Vaporwave Search Results
19[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20210328-vaporwave-vs-outrun/vaporwave-search-results.png]] 19[[https://img.cleberg.net/blog/20210328-vaporwave-vs-outrun/vaporwave-search-results.png]]
20 20
21* Vaporwave 21* Vaporwave
22 22
23#+caption: Macintosh Plus Album Cover 23#+caption: Macintosh Plus Album Cover
24[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20210328-vaporwave-vs-outrun/macintosh-plus.png]] 24[[https://img.cleberg.net/blog/20210328-vaporwave-vs-outrun/macintosh-plus.png]]
25 25
26Okay, so what is Vaporwave? I'm going to just copy-and-paste some 26Okay, so what is Vaporwave? I'm going to just copy-and-paste some
27general info from the Wikipedia article on 27general info from the Wikipedia article on
@@ -80,7 +80,7 @@ is a large part of Vaporwave.
80* Outrun 80* Outrun
81 81
82#+caption: Outrun 82#+caption: Outrun
83[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20210328-vaporwave-vs-outrun/outrun.png]] 83[[https://img.cleberg.net/blog/20210328-vaporwave-vs-outrun/outrun.png]]
84 84
85Now, let's get to Outrun. This one is a little trickier since the genre 85Now, let's get to Outrun. This one is a little trickier since the genre
86has largely been lumped under the Vaporwave title for so long. However, 86has largely been lumped under the Vaporwave title for so long. However,
@@ -115,16 +115,16 @@ would look like. Take a look at a common video game discussed in Outrun
115circles, Far Cry 3: Blood Dragon: 115circles, Far Cry 3: Blood Dragon:
116 116
117#+caption: Fry Cry 3: Blood Dragon 117#+caption: Fry Cry 3: Blood Dragon
118[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20210328-vaporwave-vs-outrun/far-cry.png]] 118[[https://img.cleberg.net/blog/20210328-vaporwave-vs-outrun/far-cry.png]]
119 119
120Another example that doesn't force the color scheme as hard as some 120Another example that doesn't force the color scheme as hard as some
121online art does is Kung Fury: 121online art does is Kung Fury:
122 122
123#+caption: Kung Fury 123#+caption: Kung Fury
124[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20210328-vaporwave-vs-outrun/kung-fury.png]] 124[[https://img.cleberg.net/blog/20210328-vaporwave-vs-outrun/kung-fury.png]]
125 125
126#+caption: Kung Fury Hacker Scene 126#+caption: Kung Fury Hacker Scene
127[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20210328-vaporwave-vs-outrun/kung-fury-hacker.png]] 127[[https://img.cleberg.net/blog/20210328-vaporwave-vs-outrun/kung-fury-hacker.png]]
128 128
129* Conclusion 129* Conclusion
130 130
content/blog/2022-02-22-tuesday.org +1 −1
@@ -26,7 +26,7 @@ Let's look at everything that fell in place today:
26 Slavonic word =въторъ=, meaning "the second." 26 Slavonic word =въторъ=, meaning "the second."
275. Written in the classic monospaced, digital font (think of digital 275. Written in the classic monospaced, digital font (think of digital
28 clocks from the 80s/90s), there is nice symmetry to the numbers 28 clocks from the 80s/90s), there is nice symmetry to the numbers
29 ([[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20220222-tuesday/digital_font.png][view 29 ([[https://img.cleberg.net/blog/20220222-tuesday/digital_font.png][view
30 the image here]]!). 30 the image here]]!).
316. This one isn't naturally-occurring, but it seems people around the 316. This one isn't naturally-occurring, but it seems people around the
32 world are celebrating the day. For example, a group is putting 32 world are celebrating the day. For example, a group is putting
content/blog/2022-03-02-reliable-notes.org +3 −3
@@ -44,7 +44,7 @@ Markdown file in plain-text, since it does contain any features to
44preview Markdown as HTML: 44preview Markdown as HTML:
45 45
46#+caption: Plain Text Markdown 46#+caption: Plain Text Markdown
47[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20220302-easy-reliable-note-taking/plain_markdown.png]] 47[[https://img.cleberg.net/blog/20220302-easy-reliable-note-taking/plain_markdown.png]]
48 48
49** Saving & Syncing Files 49** Saving & Syncing Files
50:PROPERTIES: 50:PROPERTIES:
@@ -118,13 +118,13 @@ Here's an example of how my Markdown notes look when opened in
118plain-text mode: 118plain-text mode:
119 119
120#+caption: Obsidian Markdown Source Mode 120#+caption: Obsidian Markdown Source Mode
121[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20220302-easy-reliable-note-taking/obsidian_source_mode.png]] 121[[https://img.cleberg.net/blog/20220302-easy-reliable-note-taking/obsidian_source_mode.png]]
122 122
123Here's the "live preview" version, where the Markdown is rendered into 123Here's the "live preview" version, where the Markdown is rendered into
124its HTML format: 124its HTML format:
125 125
126#+caption: Obsidian Markdown Live Preview 126#+caption: Obsidian Markdown Live Preview
127[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20220302-easy-reliable-note-taking/obsidian_live_preview.png]] 127[[https://img.cleberg.net/blog/20220302-easy-reliable-note-taking/obsidian_live_preview.png]]
128 128
129*** Programming on Desktop 129*** Programming on Desktop
130:PROPERTIES: 130:PROPERTIES:
content/blog/2022-10-04-syncthing.org +1 −1
@@ -95,7 +95,7 @@ add/modify connected devices.
95Here's an example web GUI dashboard: 95Here's an example web GUI dashboard:
96 96
97#+caption: Syncthing Dashboard 97#+caption: Syncthing Dashboard
98[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20221020-syncthing/syncthing_gui.png]] 98[[https://img.cleberg.net/blog/20221020-syncthing/syncthing_gui.png]]
99 99
100** Remote Devices 100** Remote Devices
101 101
content/blog/2023-06-23-byobu.org +1 −1
@@ -19,7 +19,7 @@ Take a look below at my current multi-window set-up in byobu while I
19write this blog post: 19write this blog post:
20 20
21#+caption: byobu 21#+caption: byobu
22[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20230623-byobu/byobu.png]] 22[[https://img.cleberg.net/blog/20230623-byobu/byobu.png]]
23 23
24*** Keybindings 24*** Keybindings
25 25
content/blog/2023-06-23-self-hosting-convos.org +2 −2
@@ -130,10 +130,10 @@ There are numerous themes to choose from; the theme shown in the images
130below is Dracula. 130below is Dracula.
131 131
132#+caption: Convos Home 132#+caption: Convos Home
133[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20230623-convos/convos_home.png]] 133[[https://img.cleberg.net/blog/20230623-convos/convos_home.png]]
134 134
135#+caption: Convos Chat 135#+caption: Convos Chat
136[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20230623-convos/convos_chat.png]] 136[[https://img.cleberg.net/blog/20230623-convos/convos_chat.png]]
137 137
138* Registering a Nickname 138* Registering a Nickname
139 139
content/blog/2023-10-11-self-hosting-authelia.org +2 −2
@@ -441,11 +441,11 @@ When visiting the protected domain, you will now be redirected to your
441authentication domain and presented with the Authelia login portal. 441authentication domain and presented with the Authelia login portal.
442 442
443#+caption: Authelia Portal 443#+caption: Authelia Portal
444[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20231010-authelia/authelia_portal.png]] 444[[https://img.cleberg.net/blog/20231010-authelia/authelia_portal.png]]
445 445
446Once you've successfully authenticated, you can visit your 446Once you've successfully authenticated, you can visit your
447authentication domain directly and see that you're currently 447authentication domain directly and see that you're currently
448authenticated to any domain protected by Authelia. 448authenticated to any domain protected by Authelia.
449 449
450#+caption: Authelia Success 450#+caption: Authelia Success
451[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20231010-authelia/authelia_success.png]] 451[[https://img.cleberg.net/blog/20231010-authelia/authelia_success.png]]
content/blog/2024-01-27-tableau-dashboard.org +2 −2
@@ -11,7 +11,7 @@ them to create the dashboard below. You can view this dashboard interactively
11online here: [[https://public.tableau.com/app/profile/c.c7042/viz/OmahaCrimeData2015-2023/OmahaCrimeData2015-2023#1][Omaha Crime Data (2015 - 2023)]]. 11online here: [[https://public.tableau.com/app/profile/c.c7042/viz/OmahaCrimeData2015-2023/OmahaCrimeData2015-2023#1][Omaha Crime Data (2015 - 2023)]].
12 12
13#+caption: Tableau Dashboard 13#+caption: Tableau Dashboard
14[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20240127-tableau-dashboard/dashboard.png]] 14[[https://img.cleberg.net/blog/20240127-tableau-dashboard/dashboard.png]]
15 15
16* Gather the Data 16* Gather the Data
17 17
@@ -140,4 +140,4 @@ There's a ton of other options available to be used in a dashboard like this,
140but this project shows a quick preview of what you can do in Tableau Public. 140but this project shows a quick preview of what you can do in Tableau Public.
141 141
142#+caption: Tableau Dashboard 142#+caption: Tableau Dashboard
143[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20240127-tableau-dashboard/dashboard.png]] 143[[https://img.cleberg.net/blog/20240127-tableau-dashboard/dashboard.png]]
content/blog/2024-03-13-doom-emacs.org +4 −4
@@ -12,10 +12,10 @@ and the help pane open at the bottomm.
12The themes are =doom-homage-white= and =doom-homage-black=. 12The themes are =doom-homage-white= and =doom-homage-black=.
13 13
14#+caption: Doom Emacs Light Mode 14#+caption: Doom Emacs Light Mode
15[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20240314-doom-emacs/light.png]] 15[[https://img.cleberg.net/blog/20240314-doom-emacs/light.png]]
16 16
17#+caption: Doom Emacs Dark Mode 17#+caption: Doom Emacs Dark Mode
18[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20240314-doom-emacs/dark.png]] 18[[https://img.cleberg.net/blog/20240314-doom-emacs/dark.png]]
19 19
20** Getting Started 20** Getting Started
21 21
@@ -183,7 +183,7 @@ been slowly adoping some Python and general web dev tools as well.
183*** Markdown 183*** Markdown
184 184
185#+caption: Markdown Preview 185#+caption: Markdown Preview
186[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20240314-doom-emacs/markdown.png]] 186[[https://img.cleberg.net/blog/20240314-doom-emacs/markdown.png]]
187 187
188Markdown is fairly simple as the syntax is limited, so just make sure the 188Markdown is fairly simple as the syntax is limited, so just make sure the
189=~/.doom.d/init.el= includes the =markdown= declaration in the =:lang= section. 189=~/.doom.d/init.el= includes the =markdown= declaration in the =:lang= section.
@@ -205,7 +205,7 @@ things like link hiding.
205*** Org-Mode 205*** Org-Mode
206 206
207#+caption: Org-Mode Preview 207#+caption: Org-Mode Preview
208[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20240314-doom-emacs/org.png]] 208[[https://img.cleberg.net/blog/20240314-doom-emacs/org.png]]
209 209
210Similar to the markdown section above, ensure that the =~/.doom.d/init.el= 210Similar to the markdown section above, ensure that the =~/.doom.d/init.el=
211includes the =org= declaration in the =:lang= section. 211includes the =org= declaration in the =:lang= section.
content/blog/2024-03-15-self-hosting-ddns-updater.org +1 −1
@@ -4,7 +4,7 @@
4#+slug: self-hosting-ddns-updater 4#+slug: self-hosting-ddns-updater
5 5
6#+caption: DDNS Updater Web View 6#+caption: DDNS Updater Web View
7[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20240315-ddns-updater/ddns.png]] 7[[https://img.cleberg.net/blog/20240315-ddns-updater/ddns.png]]
8 8
9[[https://github.com/qdm12/ddns-updater][DDNS Updater]] is a program to keep DNS A and/or AAAA records updated for multiple 9[[https://github.com/qdm12/ddns-updater][DDNS Updater]] is a program to keep DNS A and/or AAAA records updated for multiple
10DNS providers. 10DNS providers.
content/blog/2024-04-08-docker-local-web-server.org +3 −3
@@ -33,7 +33,7 @@ Open the installer and follow the installation process until the application
33finishes the installation process. 33finishes the installation process.
34 34
35#+caption: Docker Desktop on macOS 35#+caption: Docker Desktop on macOS
36[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20240408-docker-local-web-server/docker-desktop.png]] 36[[https://img.cleberg.net/blog/20240408-docker-local-web-server/docker-desktop.png]]
37 37
38** Creating an Nginx Container 38** Creating an Nginx Container
39 39
@@ -56,7 +56,7 @@ docker run -it --rm -d -p 8000:80 --name web nginx
56You can navigate to [[http://localhost:8000]] to see the resulting page. 56You can navigate to [[http://localhost:8000]] to see the resulting page.
57 57
58#+caption: Default Nginx Container 58#+caption: Default Nginx Container
59[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20240408-docker-local-web-server/default-container.png]] 59[[https://img.cleberg.net/blog/20240408-docker-local-web-server/default-container.png]]
60 60
61** Customizing the Nginx Container 61** Customizing the Nginx Container
62 62
@@ -102,7 +102,7 @@ server {
102} 102}
103#+end_src 103#+end_src
104 104
105[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20240408-docker-local-web-server/custom-container.png]] 105[[https://img.cleberg.net/blog/20240408-docker-local-web-server/custom-container.png]]
106 106
107* Customizing Deployment Actions 107* Customizing Deployment Actions
108 108
content/blog/2024-04-18-mu4e.org +1 −1
@@ -300,4 +300,4 @@ The home page shows various options and metadata about the account you've
300opened. 300opened.
301 301
302#+caption: Mu4e Home Page 302#+caption: Mu4e Home Page
303[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20240418-mu4e/mu4e.png]] 303[[https://img.cleberg.net/blog/20240418-mu4e/mu4e.png]]
content/blog/2024-05-03-ubuntu-on-macos.org +5 −5
@@ -32,7 +32,7 @@ Once installed, you can launch OrbStack and create a Linux machine in a matter
32of seconds. The creation dialog defaults to Ubuntu. 32of seconds. The creation dialog defaults to Ubuntu.
33 33
34#+caption: OrbStack's Linux Machine Creation Page 34#+caption: OrbStack's Linux Machine Creation Page
35[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20240503-ubuntu-on-macos/create.png]] 35[[https://img.cleberg.net/blog/20240503-ubuntu-on-macos/create.png]]
36 36
37** Launching the Machine 37** Launching the Machine
38 38
@@ -62,7 +62,7 @@ In the example below, we can see that the machine is using =Linux ubuntu 6.9.6=
62and operates similar to a fresh Ubuntu install on bare metal. 62and operates similar to a fresh Ubuntu install on bare metal.
63 63
64#+caption: Ubuntu CLI 64#+caption: Ubuntu CLI
65[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20240503-ubuntu-on-macos/cli.png]] 65[[https://img.cleberg.net/blog/20240503-ubuntu-on-macos/cli.png]]
66 66
67You can also click the machine's folder icon in OrbStack to open the machine's 67You can also click the machine's folder icon in OrbStack to open the machine's
68file system within macOS's native Files app. Within Files, you can double-click 68file system within macOS's native Files app. Within Files, you can double-click
@@ -70,13 +70,13 @@ to open any files and they will open in the macOS defaults for those file types
70(e.g., TextEdit). 70(e.g., TextEdit).
71 71
72#+caption: Ubuntu Files 72#+caption: Ubuntu Files
73[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20240503-ubuntu-on-macos/files.png]] 73[[https://img.cleberg.net/blog/20240503-ubuntu-on-macos/files.png]]
74 74
75Here's an example of opening the =test.md= file in the screenshot above, which 75Here's an example of opening the =test.md= file in the screenshot above, which
76defaults to opening in Xcode on my system. 76defaults to opening in Xcode on my system.
77 77
78#+caption: Ubuntu Files 78#+caption: Ubuntu Files
79[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20240503-ubuntu-on-macos/xcode.png]] 79[[https://img.cleberg.net/blog/20240503-ubuntu-on-macos/xcode.png]]
80 80
81*** Test Examples 81*** Test Examples
82 82
@@ -84,7 +84,7 @@ As a quick example of the system, I installed =neofetch=, switched to the =zsh=
84shell, and ran a few common commands. 84shell, and ran a few common commands.
85 85
86#+caption: Test Examples 86#+caption: Test Examples
87[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20240503-ubuntu-on-macos/test.png]] 87[[https://img.cleberg.net/blog/20240503-ubuntu-on-macos/test.png]]
88 88
89** Thoughts 89** Thoughts
90 90
content/blog/2024-07-11-emacs-on-ipad.org +5 −5
@@ -15,7 +15,7 @@ I recommend [[https://apps.apple.com/us/app/ish-shell/id1436902243][iSH]], since
15and will allow you to install packages that you need. 15and will allow you to install packages that you need.
16 16
17#+caption: iSH Application 17#+caption: iSH Application
18[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20240711-emacs-on-ipad/ish.png]] 18[[https://img.cleberg.net/blog/20240711-emacs-on-ipad/ish.png]]
19 19
20** Require Packages 20** Require Packages
21 21
@@ -28,7 +28,7 @@ apk add emacs ripgrep fd findutils
28#+end_src 28#+end_src
29 29
30#+caption: Package !Installation 30#+caption: Package !Installation
31[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20240711-emacs-on-ipad/dependencies.png]] 31[[https://img.cleberg.net/blog/20240711-emacs-on-ipad/dependencies.png]]
32 32
33** Emacs 33** Emacs
34 34
@@ -40,7 +40,7 @@ incredibly slow and buggy that I was not even able to take screenshots. Someone
40smarter than me could likely get it to work with a little tinkering. 40smarter than me could likely get it to work with a little tinkering.
41 41
42#+caption: Emacs 42#+caption: Emacs
43[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20240711-emacs-on-ipad/emacs.png]] 43[[https://img.cleberg.net/blog/20240711-emacs-on-ipad/emacs.png]]
44 44
45*** MELPA 45*** MELPA
46 46
@@ -49,13 +49,13 @@ able to search through their 5700+ packages instead of just ELPA packages. If
49you don't, you will only have access to ELPA packages like the ones below. 49you don't, you will only have access to ELPA packages like the ones below.
50 50
51#+caption: package-install 51#+caption: package-install
52[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20240711-emacs-on-ipad/melpa.png]] 52[[https://img.cleberg.net/blog/20240711-emacs-on-ipad/melpa.png]]
53 53
54Once you have MELPA, you can install packages like the =dashboard= package shown 54Once you have MELPA, you can install packages like the =dashboard= package shown
55below. 55below.
56 56
57#+caption: emacs-dashboard 57#+caption: emacs-dashboard
58[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20240711-emacs-on-ipad/dashboard.png]] 58[[https://img.cleberg.net/blog/20240711-emacs-on-ipad/dashboard.png]]
59 59
60*** Speed 60*** Speed
61 61
content/blog/2024-08-25-n8n-sentiment-analysis.org +3 −3
@@ -113,7 +113,7 @@ You can open the included workflow at
113and create a new configuration. 113and create a new configuration.
114 114
115#+caption: n8n Workflow 115#+caption: n8n Workflow
116[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20240825-n8n-sentiment-analysis/workflow.png]] 116[[https://img.cleberg.net/blog/20240825-n8n-sentiment-analysis/workflow.png]]
117 117
118This workflow contains the following nodes: 118This workflow contains the following nodes:
1191. Email Trigger (IMAP) 1191. Email Trigger (IMAP)
@@ -151,10 +151,10 @@ send yourself a test email!
151After testing each step noted above, n8n provided the results below - it works! 151After testing each step noted above, n8n provided the results below - it works!
152 152
153#+caption: Positive Results 153#+caption: Positive Results
154[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20240825-n8n-sentiment-analysis/positive_results.png]] 154[[https://img.cleberg.net/blog/20240825-n8n-sentiment-analysis/positive_results.png]]
155 155
156#+caption: Negative Results 156#+caption: Negative Results
157[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20240825-n8n-sentiment-analysis/negative_results.png]] 157[[https://img.cleberg.net/blog/20240825-n8n-sentiment-analysis/negative_results.png]]
158 158
159While this isn't anything earth-shattering, it does show easy it is to get 159While this isn't anything earth-shattering, it does show easy it is to get
160started with n8n and large language models in a self-hosted environment. 160started with n8n and large language models in a self-hosted environment.
content/blog/2024-09-20-prometheus-grafana-cloud.org +9 −9
@@ -277,7 +277,7 @@ and determine what Grafana should do when an alert is triggered.
277** OnCall 277** OnCall
278 278
279#+caption: OnCall 279#+caption: OnCall
280[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20240920-prometheus-grafana-cloud/oncall.png]] 280[[https://img.cleberg.net/blog/20240920-prometheus-grafana-cloud/oncall.png]]
281 281
282Within the Alerts & IRM section of Grafana (=/alerts-and-incidents=), open the 282Within the Alerts & IRM section of Grafana (=/alerts-and-incidents=), open the
283Users page. 283Users page.
@@ -299,12 +299,12 @@ users and teams to be on call for specific date and time ranges. For my
299purposes, I put myself on-call 24/7 so that I receive all alerts. 299purposes, I put myself on-call 24/7 so that I receive all alerts.
300 300
301#+caption: User Information 301#+caption: User Information
302[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20240920-prometheus-grafana-cloud/irm_user_info.png]] 302[[https://img.cleberg.net/blog/20240920-prometheus-grafana-cloud/irm_user_info.png]]
303 303
304** Alerting 304** Alerting
305 305
306#+caption: Alerting Insights 306#+caption: Alerting Insights
307[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20240920-prometheus-grafana-cloud/alerting_insights.png]] 307[[https://img.cleberg.net/blog/20240920-prometheus-grafana-cloud/alerting_insights.png]]
308 308
309Now that we have defined users and team associated with an on-call schedule and 309Now that we have defined users and team associated with an on-call schedule and
310configured to receive the proper alerts, let's define a rule that will generate 310configured to receive the proper alerts, let's define a rule that will generate
@@ -323,13 +323,13 @@ evaluation group. This is connected to our Grafana email, but can be associated
323with any notification policy. 323with any notification policy.
324 324
325#+caption: New Alert Rule 325#+caption: New Alert Rule
326[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20240920-prometheus-grafana-cloud/new_alert.png]] 326[[https://img.cleberg.net/blog/20240920-prometheus-grafana-cloud/new_alert.png]]
327 327
328When the alert fires, it will generate an email (or whatever notification policy 328When the alert fires, it will generate an email (or whatever notification policy
329you assigned) and will look something like the following image. 329you assigned) and will look something like the following image.
330 330
331#+caption: Alerting Example 331#+caption: Alerting Example
332[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20240920-prometheus-grafana-cloud/email_alert.png]] 332[[https://img.cleberg.net/blog/20240920-prometheus-grafana-cloud/email_alert.png]]
333 333
334** Dashboards 334** Dashboards
335 335
@@ -337,13 +337,13 @@ As promised above, here are some dashboard screenshots based on the
337configurations above. 337configurations above.
338 338
339#+caption: Nginx Dashboard 339#+caption: Nginx Dashboard
340[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20240920-prometheus-grafana-cloud/dashboard_nginx.png]] 340[[https://img.cleberg.net/blog/20240920-prometheus-grafana-cloud/dashboard_nginx.png]]
341 341
342#+caption: Node Dashboard 342#+caption: Node Dashboard
343[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20240920-prometheus-grafana-cloud/dashboard_node.png]] 343[[https://img.cleberg.net/blog/20240920-prometheus-grafana-cloud/dashboard_node.png]]
344 344
345#+caption: OnCall Dashboard 345#+caption: OnCall Dashboard
346[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20240920-prometheus-grafana-cloud/dashboard_oncall.png]] 346[[https://img.cleberg.net/blog/20240920-prometheus-grafana-cloud/dashboard_oncall.png]]
347 347
348#+caption: Prometheus Dashboard 348#+caption: Prometheus Dashboard
349[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20240920-prometheus-grafana-cloud/dashboard_prometheus.png]] 349[[https://img.cleberg.net/blog/20240920-prometheus-grafana-cloud/dashboard_prometheus.png]]
content/blog/2024-10-31-continue-ollama-code-assistant.org +5 −5
@@ -201,19 +201,19 @@ Continue:
201Below are a few screenshots from my current VS Codium window: 201Below are a few screenshots from my current VS Codium window:
202 202
203#+caption: Available Continue Commands 203#+caption: Available Continue Commands
204[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20241031-continue-ollama-code-assistant/continue_commands.png]] 204[[https://img.cleberg.net/blog/20241031-continue-ollama-code-assistant/continue_commands.png]]
205 205
206#+caption: Continue Fullscreen Chat Window 206#+caption: Continue Fullscreen Chat Window
207[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20241031-continue-ollama-code-assistant/continue_fullscreen.png]] 207[[https://img.cleberg.net/blog/20241031-continue-ollama-code-assistant/continue_fullscreen.png]]
208 208
209#+caption: Inline Hotkeys 209#+caption: Inline Hotkeys
210[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20241031-continue-ollama-code-assistant/continue_inline_hotkeys.png]] 210[[https://img.cleberg.net/blog/20241031-continue-ollama-code-assistant/continue_inline_hotkeys.png]]
211 211
212#+caption: Inline Editing Suggestions 212#+caption: Inline Editing Suggestions
213[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20241031-continue-ollama-code-assistant/continue_inline.png]] 213[[https://img.cleberg.net/blog/20241031-continue-ollama-code-assistant/continue_inline.png]]
214 214
215#+caption: Sidebar Context Window 215#+caption: Sidebar Context Window
216[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20241031-continue-ollama-code-assistant/continue_sidebar.png]] 216[[https://img.cleberg.net/blog/20241031-continue-ollama-code-assistant/continue_sidebar.png]]
217 217
218* Conclusion 218* Conclusion
219 219
content/blog/2024-12-27-self-hosting-the-lounge.org +4 −4
@@ -60,7 +60,7 @@ browsing from a different device. Don't forget to allow the port through your
60machine's firewall, if you have one enabled. 60machine's firewall, if you have one enabled.
61 61
62#+caption: Login 62#+caption: Login
63[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20241229-thelounge/login.png]] 63[[https://img.cleberg.net/blog/20241229-thelounge/login.png]]
64 64
65** Nginx Reverse Proxy 65** Nginx Reverse Proxy
66 66
@@ -155,10 +155,10 @@ bottom of the sidebar and connect to individual channels or users via the plus
155(=+=) button next to your server's name in the sidebar. 155(=+=) button next to your server's name in the sidebar.
156 156
157#+caption: New Server Connection 157#+caption: New Server Connection
158[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20241229-thelounge/new_connection.png]] 158[[https://img.cleberg.net/blog/20241229-thelounge/new_connection.png]]
159 159
160#+caption: Existing Server Connection 160#+caption: Existing Server Connection
161[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20241229-thelounge/existing_connection.png]] 161[[https://img.cleberg.net/blog/20241229-thelounge/existing_connection.png]]
162 162
163#+caption: Channel View 163#+caption: Channel View
164[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20241229-thelounge/channel.png]] 164[[https://img.cleberg.net/blog/20241229-thelounge/channel.png]]
content/blog/2025-01-23-self-hosting-tandoor.org +7 −7
@@ -125,22 +125,22 @@ The app is now available on your custom domain!
125** Screenshots 125** Screenshots
126 126
127#+caption: Login 127#+caption: Login
128[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20250123-self-hosting-tandoor/login.png]] 128[[https://img.cleberg.net/blog/20250123-self-hosting-tandoor/login.png]]
129 129
130#+caption: Recipes 130#+caption: Recipes
131[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20250123-self-hosting-tandoor/recipes.png]] 131[[https://img.cleberg.net/blog/20250123-self-hosting-tandoor/recipes.png]]
132 132
133#+caption: Meal Plan 133#+caption: Meal Plan
134[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20250123-self-hosting-tandoor/mealplan.png]] 134[[https://img.cleberg.net/blog/20250123-self-hosting-tandoor/mealplan.png]]
135 135
136#+caption: Shopping Lists 136#+caption: Shopping Lists
137[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20250123-self-hosting-tandoor/shopping.png]] 137[[https://img.cleberg.net/blog/20250123-self-hosting-tandoor/shopping.png]]
138 138
139#+caption: Cook Book 139#+caption: Cook Book
140[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20250123-self-hosting-tandoor/cookbook.png]] 140[[https://img.cleberg.net/blog/20250123-self-hosting-tandoor/cookbook.png]]
141 141
142#+caption: Import 142#+caption: Import
143[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20250123-self-hosting-tandoor/import.png]] 143[[https://img.cleberg.net/blog/20250123-self-hosting-tandoor/import.png]]
144 144
145#+caption: Administration Panel 145#+caption: Administration Panel
146[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20250123-self-hosting-tandoor/admin.png]] 146[[https://img.cleberg.net/blog/20250123-self-hosting-tandoor/admin.png]]
content/blog/2025-02-11-obscura-vpn.org +4 −4
@@ -55,7 +55,7 @@ far as I can tell, there is no free tier available. In my opinion, this is a
55good thing as I hesitate to understand how privacy-focused apps make money when 55good thing as I hesitate to understand how privacy-focused apps make money when
56they offer free services to users. 56they offer free services to users.
57 57
58[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20250211-obscura-vpn/payment.png]] 58[[https://img.cleberg.net/blog/20250211-obscura-vpn/payment.png]]
59#+caption: Payment 59#+caption: Payment
60 60
61** Connection 61** Connection
@@ -64,10 +64,10 @@ Once you've enrolled in either a subscription or one-time payment, Obscura will
64return you to the app and allow you to connect. You can choose a specific server 64return you to the app and allow you to connect. You can choose a specific server
65location or automatically connect. 65location or automatically connect.
66 66
67[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20250211-obscura-vpn/connect.png]] 67[[https://img.cleberg.net/blog/20250211-obscura-vpn/connect.png]]
68#+caption: Initial Connection 68#+caption: Initial Connection
69 69
70[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20250211-obscura-vpn/toolbar.png]] 70[[https://img.cleberg.net/blog/20250211-obscura-vpn/toolbar.png]]
71#+caption: Toolbar Utility 71#+caption: Toolbar Utility
72 72
73** Speed 73** Speed
@@ -91,7 +91,7 @@ nodes before connecting to your target.
91From the image below, we can see that Mullvad confirmed my traffic to be 91From the image below, we can see that Mullvad confirmed my traffic to be
92connected through a Mullvad IP address. 92connected through a Mullvad IP address.
93 93
94[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/20250211-obscura-vpn/mullvad-check.png]] 94[[https://img.cleberg.net/blog/20250211-obscura-vpn/mullvad-check.png]]
95#+caption: Mullvad Check 95#+caption: Mullvad Check
96 96
97* Final Thoughts 97* Final Thoughts
content/salary/index.org +1 −1
@@ -60,7 +60,7 @@ See the graph below for a visualization of each job's salary over time, as well
60as percentage increases or decreases between jobs. 60as percentage increases or decreases between jobs.
61 61
62#+caption: Salary Visualization 62#+caption: Salary Visualization
63[[https://raw.githubusercontent.com/ccleberg/img/refs/heads/main/blog/salary/salary.png]] 63[[https://img.cleberg.net/blog/salary/salary.png]]
64 64
65This page was inspired by [[https://xeiaso.net/salary-transparency/][Xe]], and I'm quoting the following wording from them as 65This page was inspired by [[https://xeiaso.net/salary-transparency/][Xe]], and I'm quoting the following wording from them as
66I want to reiterate this piece: 66I want to reiterate this piece: