Compare commits
38 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
720efcec9f | ||
| a4dcf8515d | |||
|
|
c6d9a3d9da | ||
| 1d021e3095 | |||
|
|
ecf584b7dc | ||
| e23f5bfc51 | |||
| 23c02c531b | |||
| 3b656496e9 | |||
| 55fc528c22 | |||
|
|
365e7f7fdf | ||
| 0b041523ae | |||
|
0427186766
|
|||
| fac3a999d6 | |||
|
|
20b66b8aad | ||
| 1b34c03861 | |||
| a2bae2bb1b | |||
| c7b49df433 | |||
|
0b8f720d6a
|
|||
|
9b57393281
|
|||
|
7cfcba400e
|
|||
| 1565dea7bb | |||
| 3873667e9a | |||
|
5c36a1f31d
|
|||
|
8116b9458c
|
|||
| a26c9145d1 | |||
|
|
e3e9000ca9 | ||
| 990eb62c75 | |||
| 33e887348b | |||
|
|
78da2d0e42 | ||
| 08b09d02a1 | |||
|
ee51a5ba9b
|
|||
|
a9d8640e5e
|
|||
|
5bff569cf9
|
|||
|
6769f18bd1
|
|||
|
9173b81db4
|
|||
|
7ba762733b
|
|||
|
d4ad707b68
|
|||
|
6dea02bc7e
|
@@ -17,14 +17,14 @@ jobs:
|
|||||||
ref: release
|
ref: release
|
||||||
|
|
||||||
- name: Set up Node
|
- name: Set up Node
|
||||||
uses: actions/setup-node@v6.3.0
|
uses: actions/setup-node@v6.4.0
|
||||||
with:
|
with:
|
||||||
node-version: 24.15.0
|
node-version: 24.15.0
|
||||||
|
|
||||||
- name: Set up Bun
|
- name: Set up Bun
|
||||||
uses: oven-sh/setup-bun@v2.2.0
|
uses: oven-sh/setup-bun@v2.2.0
|
||||||
with:
|
with:
|
||||||
bun-version: 1.3.12
|
bun-version: 1.3.13
|
||||||
|
|
||||||
- name: Install Dependencies
|
- name: Install Dependencies
|
||||||
run: bun install --frozen-lockfile
|
run: bun install --frozen-lockfile
|
||||||
@@ -112,14 +112,14 @@ jobs:
|
|||||||
token: ${{ secrets.BOT_TOKEN }}
|
token: ${{ secrets.BOT_TOKEN }}
|
||||||
|
|
||||||
- name: Set up Node
|
- name: Set up Node
|
||||||
uses: actions/setup-node@v6.3.0
|
uses: actions/setup-node@v6.4.0
|
||||||
with:
|
with:
|
||||||
node-version: 24.15.0
|
node-version: 24.15.0
|
||||||
|
|
||||||
- name: Set up Bun
|
- name: Set up Bun
|
||||||
uses: oven-sh/setup-bun@v2.2.0
|
uses: oven-sh/setup-bun@v2.2.0
|
||||||
with:
|
with:
|
||||||
bun-version: 1.3.12
|
bun-version: 1.3.13
|
||||||
|
|
||||||
- name: Install Dependencies
|
- name: Install Dependencies
|
||||||
run: bun install --frozen-lockfile
|
run: bun install --frozen-lockfile
|
||||||
|
|||||||
@@ -20,14 +20,14 @@ jobs:
|
|||||||
uses: actions/checkout@v6.0.2
|
uses: actions/checkout@v6.0.2
|
||||||
|
|
||||||
- name: Set up Node
|
- name: Set up Node
|
||||||
uses: actions/setup-node@v6.3.0
|
uses: actions/setup-node@v6.4.0
|
||||||
with:
|
with:
|
||||||
node-version: 24.15.0
|
node-version: 24.15.0
|
||||||
|
|
||||||
- name: Set up Bun
|
- name: Set up Bun
|
||||||
uses: oven-sh/setup-bun@v2.2.0
|
uses: oven-sh/setup-bun@v2.2.0
|
||||||
with:
|
with:
|
||||||
bun-version: 1.3.12
|
bun-version: 1.3.13
|
||||||
|
|
||||||
- name: Install Dependencies
|
- name: Install Dependencies
|
||||||
run: bun install --frozen-lockfile
|
run: bun install --frozen-lockfile
|
||||||
|
|||||||
69
CHANGELOG.md
@@ -1,3 +1,72 @@
|
|||||||
|
# [0.33.0](http://gitea-http.gitea:3000/alexlebens/site-documentation/compare/0.32.0...0.33.0) (2026-05-13)
|
||||||
|
|
||||||
|
|
||||||
|
### Features
|
||||||
|
|
||||||
|
* spell check pass ([a4dcf85](http://gitea-http.gitea:3000/alexlebens/site-documentation/commit/a4dcf8515da4f3eb81a5b09f7cb719c95d99f804))
|
||||||
|
|
||||||
|
# [0.32.0](http://gitea-http.gitea:3000/alexlebens/site-documentation/compare/0.31.0...0.32.0) (2026-05-13)
|
||||||
|
|
||||||
|
|
||||||
|
### Features
|
||||||
|
|
||||||
|
* change logo ([1d021e3](http://gitea-http.gitea:3000/alexlebens/site-documentation/commit/1d021e309587bf58daa88957d5d92714c7d4509f))
|
||||||
|
|
||||||
|
# [0.31.0](http://gitea-http.gitea:3000/alexlebens/site-documentation/compare/0.30.0...0.31.0) (2026-05-13)
|
||||||
|
|
||||||
|
|
||||||
|
### Features
|
||||||
|
|
||||||
|
* add images ([55fc528](http://gitea-http.gitea:3000/alexlebens/site-documentation/commit/55fc528c2288c47e2d592ea339b134b10f315735))
|
||||||
|
* arrange reference ([e23f5bf](http://gitea-http.gitea:3000/alexlebens/site-documentation/commit/e23f5bfc51ad1c91ba62496ee353575eabff3627))
|
||||||
|
* fix imports and images ([23c02c5](http://gitea-http.gitea:3000/alexlebens/site-documentation/commit/23c02c531b445d623c4e2506a3d0efdc93e5922f))
|
||||||
|
* refresh index page ([3b65649](http://gitea-http.gitea:3000/alexlebens/site-documentation/commit/3b656496e97e57fa372d767895fa4077c9a0c836))
|
||||||
|
|
||||||
|
# [0.30.0](http://gitea-http.gitea:3000/alexlebens/site-documentation/compare/0.29.0...0.30.0) (2026-05-12)
|
||||||
|
|
||||||
|
|
||||||
|
### Features
|
||||||
|
|
||||||
|
* add 3d printer docs ([fac3a99](http://gitea-http.gitea:3000/alexlebens/site-documentation/commit/fac3a999d64e499e92b0123f2a9b03074f4d4008))
|
||||||
|
|
||||||
|
# [0.29.0](http://gitea-http.gitea:3000/alexlebens/site-documentation/compare/0.28.0...0.29.0) (2026-05-08)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* **deps:** update dependency @astrojs/starlight to v0.38.5 ([0b8f720](http://gitea-http.gitea:3000/alexlebens/site-documentation/commit/0b8f720d6afc765759a3f5bfef1ec1a575247e4f))
|
||||||
|
* **deps:** update dependency astro to v6.1.10 ([5c36a1f](http://gitea-http.gitea:3000/alexlebens/site-documentation/commit/5c36a1f31d8098828fe790dcb307ef6f391a53a0))
|
||||||
|
* **deps:** update dependency astro to v6.2.2 ([9b57393](http://gitea-http.gitea:3000/alexlebens/site-documentation/commit/9b57393281b55441ef6786ed597519e0f6280e93))
|
||||||
|
|
||||||
|
|
||||||
|
### Features
|
||||||
|
|
||||||
|
* allow processing svg ([c7b49df](http://gitea-http.gitea:3000/alexlebens/site-documentation/commit/c7b49df433d25f343e336fdf5f972f479a2cd07e))
|
||||||
|
* rebase ([1b34c03](http://gitea-http.gitea:3000/alexlebens/site-documentation/commit/1b34c03861824b350d144d7dabbe1d10111b86e1))
|
||||||
|
* rebase ([a2bae2b](http://gitea-http.gitea:3000/alexlebens/site-documentation/commit/a2bae2bb1b2cb39005ded7c24a15705c0aea6695))
|
||||||
|
|
||||||
|
# [0.28.0](http://gitea-http.gitea:3000/alexlebens/site-documentation/compare/0.27.1...0.28.0) (2026-04-27)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* add escape ([990eb62](http://gitea-http.gitea:3000/alexlebens/site-documentation/commit/990eb62c75c2c0460a18410b8c2abff920fdffe2))
|
||||||
|
|
||||||
|
|
||||||
|
### Features
|
||||||
|
|
||||||
|
* move guides ([33e8873](http://gitea-http.gitea:3000/alexlebens/site-documentation/commit/33e887348ba9976e2dfb54f68d7031da060e3281))
|
||||||
|
|
||||||
|
## [0.27.1](http://gitea-http.gitea:3000/alexlebens/site-documentation/compare/0.27.0...0.27.1) (2026-04-26)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* **deps:** update astro monorepo ([6769f18](http://gitea-http.gitea:3000/alexlebens/site-documentation/commit/6769f18bd11000d3c4b71f0951f8a4cc147f8352))
|
||||||
|
* **deps:** update dependency @astrojs/starlight to v0.38.4 ([a9d8640](http://gitea-http.gitea:3000/alexlebens/site-documentation/commit/a9d8640e5ed4f525bc46a49a971755a42befb8f6))
|
||||||
|
* **deps:** update tailwindcss monorepo to v4.2.3 ([7ba7627](http://gitea-http.gitea:3000/alexlebens/site-documentation/commit/7ba762733b818ce9c758ad16a2c633d2e8093e02))
|
||||||
|
* **deps:** update tailwindcss monorepo to v4.2.4 ([9173b81](http://gitea-http.gitea:3000/alexlebens/site-documentation/commit/9173b81db4fe9032726ef4d666c1f06f2b366a10))
|
||||||
|
|
||||||
# [0.27.0](http://gitea-http.gitea:3000/alexlebens/site-documentation/compare/0.26.0...0.27.0) (2026-04-19)
|
# [0.27.0](http://gitea-http.gitea:3000/alexlebens/site-documentation/compare/0.26.0...0.27.0) (2026-04-19)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -16,12 +16,16 @@ const getSiteURL = () => {
|
|||||||
export default defineConfig({
|
export default defineConfig({
|
||||||
site: getSiteURL(),
|
site: getSiteURL(),
|
||||||
|
|
||||||
|
image: {
|
||||||
|
dangerouslyProcessSVG: true
|
||||||
|
},
|
||||||
|
|
||||||
prefetch: true,
|
prefetch: true,
|
||||||
|
|
||||||
integrations: [
|
integrations: [
|
||||||
sitemap(),
|
sitemap(),
|
||||||
starlight({
|
starlight({
|
||||||
title: "Alex Lebens Docs",
|
title: "Documentation",
|
||||||
head: [
|
head: [
|
||||||
{
|
{
|
||||||
tag: 'script',
|
tag: 'script',
|
||||||
@@ -37,7 +41,7 @@ export default defineConfig({
|
|||||||
],
|
],
|
||||||
expressiveCode: {
|
expressiveCode: {
|
||||||
themes: ['vitesse-light', 'vitesse-dark'],
|
themes: ['vitesse-light', 'vitesse-dark'],
|
||||||
},
|
},
|
||||||
social: [
|
social: [
|
||||||
{
|
{
|
||||||
icon: "external",
|
icon: "external",
|
||||||
@@ -50,20 +54,20 @@ export default defineConfig({
|
|||||||
],
|
],
|
||||||
sidebar: [
|
sidebar: [
|
||||||
{
|
{
|
||||||
label: "Reference",
|
label: 'Reference',
|
||||||
autogenerate: { directory: "reference" },
|
items: [{ autogenerate: { "directory": "reference" } }]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: "Guides",
|
label: 'Guides',
|
||||||
autogenerate: { directory: "guides" },
|
items: [{ autogenerate: { "directory": "guides" } }]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: "Applications",
|
label: 'Applications',
|
||||||
collapsed: true,
|
collapsed: true,
|
||||||
autogenerate: { directory: "applications" },
|
items: [{ autogenerate: { "directory": "applications" } }]
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
})
|
})
|
||||||
],
|
],
|
||||||
|
|
||||||
output: 'static',
|
output: 'static',
|
||||||
|
|||||||
26
package.json
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "site-documentation",
|
"name": "site-documentation",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"version": "0.27.0",
|
"version": "0.33.0",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "astro dev",
|
"dev": "astro dev",
|
||||||
"build": "astro build",
|
"build": "astro build",
|
||||||
@@ -12,17 +12,17 @@
|
|||||||
"astro": "astro"
|
"astro": "astro"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@astrojs/mdx": "5.0.3",
|
"@astrojs/mdx": "5.0.4",
|
||||||
"@astrojs/node": "10.0.5",
|
"@astrojs/node": "10.1.0",
|
||||||
"@astrojs/sitemap": "3.7.2",
|
"@astrojs/sitemap": "3.7.2",
|
||||||
"@astrojs/starlight": "0.38.3",
|
"@astrojs/starlight": "0.39.2",
|
||||||
"@tailwindcss/postcss": "4.2.2",
|
"@tailwindcss/postcss": "4.3.0",
|
||||||
"@tailwindcss/vite": "4.2.2",
|
"@tailwindcss/vite": "4.3.0",
|
||||||
"astro": "6.1.8",
|
"astro": "6.3.1",
|
||||||
"sanitize-html": "2.17.3",
|
"sanitize-html": "2.17.3",
|
||||||
"sharp": "0.34.5",
|
"sharp": "0.34.5",
|
||||||
"starlight-theme-rapide": "0.5.2",
|
"starlight-theme-rapide": "0.5.2",
|
||||||
"tailwindcss": "4.2.2"
|
"tailwindcss": "4.3.0"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@saithodev/semantic-release-gitea": "2.1.0",
|
"@saithodev/semantic-release-gitea": "2.1.0",
|
||||||
@@ -30,19 +30,19 @@
|
|||||||
"@semantic-release/commit-analyzer": "13.0.1",
|
"@semantic-release/commit-analyzer": "13.0.1",
|
||||||
"@semantic-release/git": "10.0.1",
|
"@semantic-release/git": "10.0.1",
|
||||||
"@semantic-release/npm": "13.1.5",
|
"@semantic-release/npm": "13.1.5",
|
||||||
"@semantic-release/release-notes-generator": "14.1.0",
|
"@semantic-release/release-notes-generator": "14.1.1",
|
||||||
"@tailwindcss/forms": "0.5.11",
|
"@tailwindcss/forms": "0.5.11",
|
||||||
"@tailwindcss/typography": "0.5.19",
|
"@tailwindcss/typography": "0.5.19",
|
||||||
"@typescript-eslint/parser": "8.58.2",
|
"@typescript-eslint/parser": "8.59.3",
|
||||||
"eslint": "10.2.1",
|
"eslint": "10.3.0",
|
||||||
"eslint-config-prettier": "10.1.8",
|
"eslint-config-prettier": "10.1.8",
|
||||||
"eslint-plugin-astro": "1.7.0",
|
"eslint-plugin-astro": "1.7.0",
|
||||||
"prettier": "3.8.3",
|
"prettier": "3.8.3",
|
||||||
"prettier-plugin-astro": "0.14.1",
|
"prettier-plugin-astro": "0.14.1",
|
||||||
"prettier-plugin-tailwindcss": "0.7.2",
|
"prettier-plugin-tailwindcss": "0.8.0",
|
||||||
"semantic-release": "25.0.3",
|
"semantic-release": "25.0.3",
|
||||||
"semantic-release-export-data": "1.2.0",
|
"semantic-release-export-data": "1.2.0",
|
||||||
"typescript": "6.0.3",
|
"typescript": "6.0.3",
|
||||||
"typescript-eslint": "8.58.2"
|
"typescript-eslint": "8.59.3"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 13 MiB |
2
src/assets/documentation.svg
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
<?xml version='1.0' encoding='utf-8'?>
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128.07 128.07"> <g transform="translate(-619.25 -107.78)"> <path transform="matrix(1.4138 0 0 1.4138 -272.18 -544.05)" d="m721.12 506.35c0 25.014-20.278 45.293-45.293 45.293s-45.293-20.278-45.293-45.293 20.278-45.293 45.293-45.293 45.293 20.278 45.293 45.293z" fill="#00a9eb" fill-rule="evenodd"/> <path d="m634.2 202.31v-54.545l47.534-6.2481 50.647 6.2481v54.545l-40.786-5.4545c-0.12263 3.0124-3.7857 5.4545-8.3043 5.4545s-8.1817-2.442-8.1817-5.4545c-13.071 1.7709-27.398 3.6584-40.909 5.4545" fill="none" stroke="#fff" stroke-linecap="round" stroke-linejoin="round" stroke-width="2.7272"/> <g fill="#00a9eb" stroke="#fff" stroke-linecap="round" stroke-linejoin="round" stroke-width="2.5"> <g transform="matrix(1.2097 0 0 1.0892 7.9737 22.346)"> <path d="m558.25 109.14s-3.0418-3.2531-7.0588-2.521c-4.0116 0.73113-11.421 3.8517-15.382 4.822-4.1537 1.0176-13.158 1.4144-13.158 1.4144l0.40093 47.094s9.0506-0.65837 13.204-1.676c3.9606-0.97028 11.37-4.0908 15.382-4.822 4.0171-0.73211 6.9696 2.7393 6.9696 2.7393z"/> <path d="m558.25 109.14s3.0418-3.2531 7.0588-2.521c4.0116 0.73113 11.421 3.8517 15.382 4.822 4.1537 1.0176 13.158 1.4144 13.158 1.4144l-0.40093 47.094s-9.0506-0.65837-13.204-1.676c-3.9606-0.97028-11.37-4.0908-15.382-4.822-4.0171-0.73211-6.2542 2.7393-6.2542 2.7393z"/> </g> <g transform="matrix(1.078 0 0 1.078 20.346 -219.36)"> <path d="m615 331.84s-3.0418-3.2531-7.0588-2.521c-4.0116 0.73113-11.421 3.8517-15.382 4.822-4.1537 1.0176-13.158 1.4144-13.158 1.4144l0.40093 47.094s9.0506-0.65837 13.204-1.676c3.9606-0.97028 11.37-4.0908 15.382-4.822 4.0171-0.73211 6.9696 2.7393 6.9696 2.7393z"/> <path d="m615 331.84s3.0418-3.2531 7.0588-2.521c4.0116 0.73113 11.421 3.8517 15.382 4.822 4.1537 1.0176 13.158 1.4144 13.158 1.4144l-0.40093 47.094s-9.0506-0.65837-13.204-1.676c-3.9606-0.97028-11.37-4.0908-15.382-4.822-4.0171-0.73211-6.2542 2.7393-6.2542 2.7393z"/> </g> </g> <path d="m700.84 143.67c-2.6596 1.9895-1.6698 4.1865-0.0468 6.5739 0.65358 1.1396 0.69335 2.3824 0.77867 3.0591-0.13829 1.7516-0.8444 9.1181-0.89615 20.533-4e-3 0.68587 0.14646 2.5672-0.46053 3.0055-2.5451 1.8381-2.5 3.2512-1.9733 4.5155 0.0603 0.1468 1.2872 3.3561 3.5734 3.7902 0.49242 0.0936-0.77826-3.2492-0.6852-3.7708 0.28125-1.5763 4.0814-1.4458 4.4527-0.68662 0.41465 0.84653 1.0171 3.8604 1.2121 3.62 0.71906-0.88383 1.9656-4.8157 0.26993-6.0306-2.3917-1.7133-2.24-3.5187-2.2392-3.6732 0.0275-5.0256 0.39083-15.911 0.57885-20.883 0.0449-1.1889 0.41761-1.8486 0.75637-2.6228 0.43468-0.99366 2.1954-1.3002 2.4991-2.5112 0.4992-1.9903-2.3377-4.8089-3.2468-5.1396-0.4704-0.17116 0.96583 3.5773 0.61554 3.9791-0.62854 0.72035-3.2089 0.72167-3.9357 0.21033-1.003-0.70539-0.35936-3.7274-1.2521-3.9692z" fill="#fff" fill-rule="evenodd"/> </g> </svg>
|
||||||
|
After Width: | Height: | Size: 2.8 KiB |
BIN
src/assets/images/guides/orcaslicer/assets.png
Normal file
|
After Width: | Height: | Size: 241 KiB |
BIN
src/assets/images/guides/orcaslicer/connection-settings.png
Normal file
|
After Width: | Height: | Size: 288 KiB |
BIN
src/assets/images/guides/orcaslicer/connection.png
Normal file
|
After Width: | Height: | Size: 111 KiB |
BIN
src/assets/images/guides/orcaslicer/create-printer.png
Normal file
|
After Width: | Height: | Size: 439 KiB |
BIN
src/assets/images/guides/orcaslicer/dropdown.png
Normal file
|
After Width: | Height: | Size: 111 KiB |
BIN
src/assets/images/guides/orcaslicer/prepare-tab.png
Normal file
|
After Width: | Height: | Size: 116 KiB |
BIN
src/assets/images/guides/orcaslicer/preset.png
Normal file
|
After Width: | Height: | Size: 598 KiB |
BIN
src/assets/images/guides/orcaslicer/release.png
Normal file
|
After Width: | Height: | Size: 193 KiB |
BIN
src/assets/images/guides/print-model/add-model.png
Normal file
|
After Width: | Height: | Size: 93 KiB |
BIN
src/assets/images/guides/print-model/infill-settings.png
Normal file
|
After Width: | Height: | Size: 259 KiB |
BIN
src/assets/images/guides/print-model/options.png
Normal file
|
After Width: | Height: | Size: 326 KiB |
BIN
src/assets/images/guides/print-model/print-button.png
Normal file
|
After Width: | Height: | Size: 40 KiB |
BIN
src/assets/images/guides/print-model/slice-button.png
Normal file
|
After Width: | Height: | Size: 41 KiB |
BIN
src/assets/images/guides/print-model/support-settings.png
Normal file
|
After Width: | Height: | Size: 185 KiB |
@@ -26,4 +26,4 @@ Deploying and managing resources within Kubernetes clusters.
|
|||||||
|
|
||||||
Syncs from templates defined in the [infrastructure](https://gitea.alexlebens.dev/alexlebens/infrastructure/src/branch/manifests/) repo, manifests branch. Deeply integrated with Gitea and the rendered manifests system.
|
Syncs from templates defined in the [infrastructure](https://gitea.alexlebens.dev/alexlebens/infrastructure/src/branch/manifests/) repo, manifests branch. Deeply integrated with Gitea and the rendered manifests system.
|
||||||
|
|
||||||
Also used as a dashboard for resources, mostly for logs and restarting deployments. This is also done in [Headlamp](https://docs.alexlebens.dev/applications/headlamp/), which is the full featured dashboard.
|
Also used as a dashboard for resources, mostly for logs and restarting deployments. This is also done in [Headlamp](https://docs.alexlebens.dev/applications/headlamp/), which is the full-featured dashboard.
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ hero:
|
|||||||
|
|
||||||
# Purpose
|
# Purpose
|
||||||
|
|
||||||
Podcasts, Audiobbooks, and Books.
|
Podcasts, Audiobooks, and Books.
|
||||||
|
|
||||||
# Notes
|
# Notes
|
||||||
|
|
||||||
|
|||||||
@@ -26,4 +26,4 @@ Single sign on authentication for applications that support OIDC.
|
|||||||
|
|
||||||
# Notes
|
# Notes
|
||||||
|
|
||||||
Available at public, local, and Tailscale endpoints. Apps are configured for their like endppoints.
|
Available at public, local, and Tailscale endpoints. Apps are configured for their like endpoints.
|
||||||
|
|||||||
@@ -16,10 +16,10 @@ hero:
|
|||||||
|
|
||||||
# Purpose
|
# Purpose
|
||||||
|
|
||||||
Backup system for files on the NAS. For size contraint reasons, does not backup most video content.
|
Backup system for files on the NAS. For size constraint reasons, does not backup most video content.
|
||||||
|
|
||||||
# Notes
|
# Notes
|
||||||
|
|
||||||
Must be manually configured in the app. Has been setup for targets at the remote - PiBox - or the Digital Ocean S3 buckets.
|
Must be manually configured in the app. Has been set up for targets at the remote - PiBox - or the Digital Ocean S3 buckets.
|
||||||
|
|
||||||
Mainly just for irreplacable files.
|
Mainly just for irreplaceable files.
|
||||||
|
|||||||
@@ -20,10 +20,10 @@ import { Aside } from '@astrojs/starlight/components';
|
|||||||
|
|
||||||
# Purpose
|
# Purpose
|
||||||
|
|
||||||
Very fast and declarative config DNS with built in adblocking. Used for local domain name configuration as well.
|
Very fast and declarative config DNS with built-in ad blocking. Used for local domain name configuration as well.
|
||||||
|
|
||||||
# Notes
|
# Notes
|
||||||
|
|
||||||
Deployments in cluster, on RaspberryPis, and the PiBox. Cluster and Tailscale use the cluster endpoint, clients use the RaspberyPis, and home network used the PiBox.
|
Deployments in cluster, on RaspberryPis, and the PiBox. Cluster and Tailscale use the cluster endpoint, clients use the RaspberyPis, and home network used the PiBox.
|
||||||
|
|
||||||
DNS over TLS to Cloudflare servers and somewhat agressive blocking.
|
DNS over TLS to Cloudflare servers and somewhat aggressive blocking.
|
||||||
|
|||||||
@@ -26,6 +26,6 @@ Operator that manages PostgreSQL deployments in cluster.
|
|||||||
|
|
||||||
A very important application since many core services and applications depend on PostgreSQL databases.
|
A very important application since many core services and applications depend on PostgreSQL databases.
|
||||||
|
|
||||||
Backups to the NAS with replication of the base backups to remote and DigialOcean S3 endpoints.
|
Backups to the NAS with replication of the base backups to remote and DigitalOcean S3 endpoints.
|
||||||
|
|
||||||
Used in conjunction with [this](https://gitea.alexlebens.dev/alexlebens/helm-charts/src/branch/main/charts/postgres-cluster) Helm Chart to easily deploy and manage the application PostgreSQL instances.
|
Used in conjunction with [this](https://gitea.alexlebens.dev/alexlebens/helm-charts/src/branch/main/charts/postgres-cluster) Helm Chart to easily deploy and manage the application PostgreSQL instances.
|
||||||
|
|||||||
@@ -24,6 +24,6 @@ DNS server just for cluster services, such as pod and service routing.
|
|||||||
|
|
||||||
# Notes
|
# Notes
|
||||||
|
|
||||||
Upstreams to [Blocky](https://docs.alexlebens.dev/applications/blocky/) for external DNS queries and also to the [Tailscale](https://docs.alexlebens.dev/applications/tailscale-operator/) DNS server for Tailnet access.
|
Upstream to [Blocky](https://docs.alexlebens.dev/applications/blocky/) for external DNS queries and also to the [Tailscale](https://docs.alexlebens.dev/applications/tailscale-operator/) DNS server for Tailnet access.
|
||||||
|
|
||||||
Deploys as part of the Talos upgrades, but managed by Helm chart for the above custom configuration.
|
Deploys as part of the Talos upgrades, but managed by Helm chart for the above custom configuration.
|
||||||
|
|||||||
@@ -21,3 +21,21 @@ Storage provider for iSCSI block devices from the NAS.
|
|||||||
# Notes
|
# Notes
|
||||||
|
|
||||||
Used for applications that need to store a lot of data, but not over the NFS connection. Examples include metrics and logging storage.
|
Used for applications that need to store a lot of data, but not over the NFS connection. Examples include metrics and logging storage.
|
||||||
|
|
||||||
|
# Issues
|
||||||
|
|
||||||
|
## Resizing the Prometheus disk
|
||||||
|
|
||||||
|
There is an issue resizing iSCSI disks. The following GitHub issue has instructions on how to manually resize if a permissions error is thrown.
|
||||||
|
|
||||||
|
https://github.com/democratic-csi/democratic-csi/issues/491#issuecomment-3778463893
|
||||||
|
|
||||||
|
- Exec into the iSCSI node pod for the node where the volume is being attached.
|
||||||
|
- Find the path where the volume is mounted, this should be in the error, and the disk name
|
||||||
|
- umount \<path>
|
||||||
|
- resize2fs /dev/\<disk name>
|
||||||
|
- Receive the error that the filesystem isn't clean, press y to optimize
|
||||||
|
- fsck -f /dev/\<disk name>
|
||||||
|
- Ensure the above comes back clean
|
||||||
|
- resize2fs /dev/sdb
|
||||||
|
- Restart pod that is mounting the disk
|
||||||
|
|||||||
@@ -20,4 +20,4 @@ Automatic service that cleans up local caches of images.
|
|||||||
|
|
||||||
# Notes
|
# Notes
|
||||||
|
|
||||||
Removes all non running images. This does cause a startup delay, but [Harbor](https://docs.alexlebens.dev/applications/harbor/) is configured as a generic pull through cache, so pulls for new images should be quick.
|
Removes all non-running images. This does cause a startup delay, but [Harbor](https://docs.alexlebens.dev/applications/harbor/) is configured as a generic pull through cache, so pulls for new images should be quick.
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ import { Aside } from '@astrojs/starlight/components';
|
|||||||
|
|
||||||
# Purpose
|
# Purpose
|
||||||
|
|
||||||
Very useful, decalarative way to make Kubernetes Secrets from an external provider.
|
Very useful, declarative way to make Kubernetes Secrets from an external provider.
|
||||||
|
|
||||||
# Notes
|
# Notes
|
||||||
|
|
||||||
|
|||||||
@@ -24,4 +24,4 @@ RSS reader for various news sites as well as software releases.
|
|||||||
|
|
||||||
# Notes
|
# Notes
|
||||||
|
|
||||||
A little finicky to setup, predates popular use of containers, but still functions quite well. I mostly use it with an Android app.
|
A little finicky to set up, predates popular use of containers, but still functions quite well. I mostly use it with an Android app.
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ import { Aside } from '@astrojs/starlight/components';
|
|||||||
|
|
||||||
# Purpose
|
# Purpose
|
||||||
|
|
||||||
Uptime and down notifications for all endpoints, both local and public.
|
Up time and down notifications for all endpoints, both local and public.
|
||||||
|
|
||||||
# Notes
|
# Notes
|
||||||
|
|
||||||
|
|||||||
@@ -20,4 +20,4 @@ Plugin used to give devices to pods, specifically tun devices for networking.
|
|||||||
|
|
||||||
# Notes
|
# Notes
|
||||||
|
|
||||||
Used by recomendation in [Tailscale Docs](https://docs.siderolabs.com/kubernetes-guides/advanced-guides/device-plugins).
|
Used by recommendation in [Tailscale Docs](https://docs.siderolabs.com/kubernetes-guides/advanced-guides/device-plugins).
|
||||||
|
|||||||
@@ -24,8 +24,8 @@ import { Aside } from '@astrojs/starlight/components';
|
|||||||
|
|
||||||
# Purpose
|
# Purpose
|
||||||
|
|
||||||
Git repoistory for storing all my code.
|
Git repository for storing all my code.
|
||||||
|
|
||||||
# Notes
|
# Notes
|
||||||
|
|
||||||
Primary code repo, repositories set to replicate to a PiBox as well as Github for a layer of backup.
|
Primary code repo, repositories set to replicate to a PiBox as well as GitHub for a layer of backup.
|
||||||
|
|||||||
@@ -24,6 +24,6 @@ Pull through cache and registry for personal images built in Gitea.
|
|||||||
|
|
||||||
# Notes
|
# Notes
|
||||||
|
|
||||||
Talos is configured to direct pulls to Docker, Github, and others to Harbor first. Stores these images as a cache to avoid rate limiting, primarily by Docker hub.
|
Talos is configured to direct pulls to Docker, GitHub, and others to Harbor first. Stores these images as a cache to avoid rate limiting, primarily by Docker hub.
|
||||||
|
|
||||||
Any of my own images also get stored here to deploy.
|
Any of my own images also get stored here to deploy.
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ hero:
|
|||||||
|
|
||||||
# Purpose
|
# Purpose
|
||||||
|
|
||||||
Local copies of various wikis and other datasets.
|
Local copies of various wikis and other data sets.
|
||||||
|
|
||||||
# Notes
|
# Notes
|
||||||
|
|
||||||
|
|||||||
@@ -20,6 +20,6 @@ Manages deployments of single nodes hosts with docker compose stacks.
|
|||||||
|
|
||||||
# Notes
|
# Notes
|
||||||
|
|
||||||
Manual setup, but follows Gitops with webhook triggered updates from Gitea.
|
Manual setup, but follows Git ops with webhook triggered updates from Gitea.
|
||||||
|
|
||||||
Compose files are placed in [infrastructure](https://gitea.alexlebens.dev/alexlebens/infrastructure/src/branch/main/hosts) under the hosts dir.
|
Compose files are placed in [infrastructure](https://gitea.alexlebens.dev/alexlebens/infrastructure/src/branch/main/hosts) under the hosts dir.
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ hero:
|
|||||||
|
|
||||||
# Purpose
|
# Purpose
|
||||||
|
|
||||||
Provides higher level grammer and spell checking service.
|
Provides higher level grammar and spell checking service.
|
||||||
|
|
||||||
# Notes
|
# Notes
|
||||||
|
|
||||||
|
|||||||
@@ -20,6 +20,6 @@ Servarr app that manages the metadata and organization of music.
|
|||||||
|
|
||||||
# Notes
|
# Notes
|
||||||
|
|
||||||
Connects to [qbittorrent](https://docs.alexlebens.dev/applications/qbittorrent), [slskd](https://docs.alexlebens.dev/applications/slskd) with support from [prowlarr](https://docs.alexlebens.dev/applications/prowlarr) and [unpackerr](https://docs.alexlebens.dev/applications/unpackerr).
|
Connects to [qbittorrent](https://docs.alexlebens.dev/applications/qbittorrent), [slskd](https://docs.alexlebens.dev/applications/slskd) with support from [Prowlarr](https://docs.alexlebens.dev/applications/prowlarr) and [Unpackerr](https://docs.alexlebens.dev/applications/unpackerr).
|
||||||
|
|
||||||
Runs on nightly branch to integrate plugins.
|
Runs on nightly branch to integrate plugins.
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ hero:
|
|||||||
|
|
||||||
# Purpose
|
# Purpose
|
||||||
|
|
||||||
Storage for paths on the local node's NVME drive. When high performance, but non redundant storage is required.
|
Storage for paths on the local node's NVME drive. When high performance, but non-redundant storage is required.
|
||||||
|
|
||||||
# Notes
|
# Notes
|
||||||
|
|
||||||
|
|||||||
@@ -20,12 +20,12 @@ import { Aside } from '@astrojs/starlight/components';
|
|||||||
|
|
||||||
# Purpose
|
# Purpose
|
||||||
|
|
||||||
Collects logs from pods and makes them availabile in Grafana.
|
Collects logs from pods and makes them available in Grafana.
|
||||||
|
|
||||||
# Notes
|
# Notes
|
||||||
|
|
||||||
Uses iSCSI for log storage.
|
Uses iSCSI for log storage.
|
||||||
|
|
||||||
Generally unused as I inspect most logs in [ArgoCD](https://docs.alexlebens.dev/applications/argo-cd/) or [Headlamp](https://docs.alexlebens.dev/applications/headlamp/). But this does keep them for longer rentention.
|
Generally unused as I inspect most logs in [ArgoCD](https://docs.alexlebens.dev/applications/argo-cd/) or [Headlamp](https://docs.alexlebens.dev/applications/headlamp/). But this does keep them for longer retention
|
||||||
|
|
||||||
Maybe someday will integrate AI from [Ollama](https://docs.alexlebens.dev/applications/ollama/) to monitor and report on logs.
|
Maybe someday will integrate AI from [Ollama](https://docs.alexlebens.dev/applications/ollama/) to monitor and report on logs.
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ hero:
|
|||||||
|
|
||||||
# Purpose
|
# Purpose
|
||||||
|
|
||||||
Core Kubernetes service that provides basic metrics on cpu, memory, and disk that is used by Kubernetes for tooling such as scaling. Also what is seen in [Headlamp](https://docs.alexlebens.dev/applications/headlamp) for live stats.
|
Core Kubernetes service that provides basic metrics on CPU, memory, and disk that is used by Kubernetes for tooling such as scaling. Also, what is seen in [Headlamp](https://docs.alexlebens.dev/applications/headlamp) for live stats.
|
||||||
|
|
||||||
# Notes
|
# Notes
|
||||||
|
|
||||||
|
|||||||
@@ -24,6 +24,6 @@ Music server that uses the subsonic protocol.
|
|||||||
|
|
||||||
# Notes
|
# Notes
|
||||||
|
|
||||||
Chart also deploys a webclient of [Feishin](https://github.com/jeffvli/feishin), but I mostly use the desktop app. On Android I use [Symfonium](https://symfonium.app/).
|
Chart also deploys a web client of [Feishin](https://github.com/jeffvli/feishin), but I mostly use the desktop app. On Android I use [Symfonium](https://symfonium.app/).
|
||||||
|
|
||||||
While I can use [Jellyfin](https://docs.alexlebens.dev/applications/jellyfin) for music, I prefer separation for dedicated media types.
|
While I can use [Jellyfin](https://docs.alexlebens.dev/applications/jellyfin) for music, I prefer separation for dedicated media types.
|
||||||
|
|||||||
@@ -24,4 +24,4 @@ Notification service based on a Pub/Sub model.
|
|||||||
|
|
||||||
# Notes
|
# Notes
|
||||||
|
|
||||||
Very useful service that sends notifications to my phone and is widely addopted by a lot of other apps or has bridging support such as through [apprise](https://github.com/caronc/apprise).
|
Very useful service that sends notifications to my phone and is widely adopted by a lot of other apps or has bridging support such as through [apprise](https://github.com/caronc/apprise).
|
||||||
|
|||||||
@@ -24,4 +24,4 @@ Local AI servers.
|
|||||||
|
|
||||||
Configured mostly to run the Gemma models.
|
Configured mostly to run the Gemma models.
|
||||||
|
|
||||||
Tailscale connction to the desktop GPU for larger model processing.
|
Tailscale connection to the desktop GPU for larger model processing.
|
||||||
|
|||||||
@@ -24,8 +24,8 @@ Secrets manager.
|
|||||||
|
|
||||||
# Notes
|
# Notes
|
||||||
|
|
||||||
Retrieved by [External Secrets](https://docs.alexlebens.dev/applications/external-secrets/) for making them availible in cluster.
|
Retrieved by [External Secrets](https://docs.alexlebens.dev/applications/external-secrets/) for making them available in cluster.
|
||||||
|
|
||||||
Can store other secrets, but primarily used for cluster secrets.
|
Can store other secrets, but primarily used for cluster secrets.
|
||||||
|
|
||||||
And by 'secrets' this means passwords, keys, etc, that are confidential and non public.
|
And by 'secrets' this means passwords, keys, etc, that are confidential and non-public.
|
||||||
|
|||||||
@@ -24,6 +24,6 @@ Automates social media posting.
|
|||||||
|
|
||||||
# Notes
|
# Notes
|
||||||
|
|
||||||
So dumb and complex to setup, has hard dependency on [Temporal](https://github.com/temporalio).
|
So dumb and complex to set up, has hard dependency on [Temporal](https://github.com/temporalio).
|
||||||
|
|
||||||
Haven't begun to use, but want to connect to automate posting of my blog.
|
Haven't begun to use, but want to connect to automate posting of my blog.
|
||||||
|
|||||||
@@ -20,4 +20,4 @@ Simple service that will ensure a restart of services if their mounted ConfigMap
|
|||||||
|
|
||||||
# Notes
|
# Notes
|
||||||
|
|
||||||
Used by a few apps, such as homepage where its entirely configured by ConfigMap.
|
Used by a few apps, such as homepage where it's entirely configured by ConfigMap.
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ import { Aside } from '@astrojs/starlight/components';
|
|||||||
|
|
||||||
# Purpose
|
# Purpose
|
||||||
|
|
||||||
Clustered storage that runs on the SSDs in cluster to provide durable and reliable block and filesystem volumes.
|
Clustered storage that runs on the SSDs in cluster to provide durable and reliable block and file system volumes.
|
||||||
|
|
||||||
# Notes
|
# Notes
|
||||||
|
|
||||||
@@ -30,4 +30,4 @@ Runs [Ceph](https://ceph.io/en/) underneath and managed by Rook pods.
|
|||||||
|
|
||||||
Ensure this system is healthy before any upgrades and restarts.
|
Ensure this system is healthy before any upgrades and restarts.
|
||||||
|
|
||||||
One of the main pressures to increase node count to expand host and disk count of this cluster for more space as well as durabiliy during node outages.
|
One of the main pressures to increase node count to expand host and disk count of this cluster for more space as well as durability during node outages.
|
||||||
|
|||||||
@@ -1,27 +0,0 @@
|
|||||||
---
|
|
||||||
title: Roundcube
|
|
||||||
description: Roundcube Webmail is a browser-based multilingual IMAP client with an application-like user interface.
|
|
||||||
hero:
|
|
||||||
tagline: Roundcube Webmail is a browser-based multilingual IMAP client with an application-like user interface.
|
|
||||||
image:
|
|
||||||
file: https://cdn.jsdelivr.net/gh/selfhst/icons@main/webp/roundcube.webp
|
|
||||||
actions:
|
|
||||||
- text: Source
|
|
||||||
link: https://github.com/roundcube/roundcubemail
|
|
||||||
icon: right-arrow
|
|
||||||
- text: Deployment Chart
|
|
||||||
link: https://gitea.alexlebens.dev/alexlebens/infrastructure/src/branch/main/clusters/cl01tl/helm/roundcube
|
|
||||||
icon: right-arrow
|
|
||||||
---
|
|
||||||
|
|
||||||
# Purpose
|
|
||||||
|
|
||||||
Internal client for email.
|
|
||||||
|
|
||||||
# Notes
|
|
||||||
|
|
||||||
Connected to [Stalwart](https://docs.alexlebens.dev/applications/stalwart/).
|
|
||||||
|
|
||||||
Generally unsued as I have not configured any services for sending email.
|
|
||||||
|
|
||||||
This is NOT used for external email, such as gmail.
|
|
||||||
@@ -20,7 +20,7 @@ import { Aside } from '@astrojs/starlight/components';
|
|||||||
|
|
||||||
# Purpose
|
# Purpose
|
||||||
|
|
||||||
Analytics service for my websites.
|
Analytic service for my websites.
|
||||||
|
|
||||||
# Notes
|
# Notes
|
||||||
|
|
||||||
|
|||||||
@@ -24,4 +24,4 @@ Metrics from the Shelly Plug.
|
|||||||
|
|
||||||
# Notes
|
# Notes
|
||||||
|
|
||||||
Can provide historical wattage use of the shelly plug which the entire homelab's electricity passes through.
|
Can provide historical wattage use of the Shelly plug which the entire homelab's electricity passes through.
|
||||||
|
|||||||
@@ -26,7 +26,7 @@ import { Aside } from '@astrojs/starlight/components';
|
|||||||
|
|
||||||
# Purpose
|
# Purpose
|
||||||
|
|
||||||
Manages metadata for tv shows.
|
Manages metadata for TV shows.
|
||||||
|
|
||||||
# Notes
|
# Notes
|
||||||
|
|
||||||
|
|||||||
@@ -1,25 +0,0 @@
|
|||||||
---
|
|
||||||
title: Stalwart
|
|
||||||
description: All-in-one Mail & Collaboration server. Secure, scalable and fluent in every protocol (IMAP, JMAP, SMTP, CalDAV, CardDAV, WebDAV).
|
|
||||||
hero:
|
|
||||||
tagline: All-in-one Mail & Collaboration server. Secure, scalable and fluent in every protocol (IMAP, JMAP, SMTP, CalDAV, CardDAV, WebDAV).
|
|
||||||
image:
|
|
||||||
file: https://cdn.jsdelivr.net/gh/selfhst/icons@main/webp/stalwart.webp
|
|
||||||
actions:
|
|
||||||
- text: Source
|
|
||||||
link: https://github.com/stalwartlabs/mail-server
|
|
||||||
icon: right-arrow
|
|
||||||
- text: Deployment Chart
|
|
||||||
link: https://gitea.alexlebens.dev/alexlebens/infrastructure/src/branch/main/clusters/cl01tl/helm/stalwart
|
|
||||||
icon: right-arrow
|
|
||||||
---
|
|
||||||
|
|
||||||
# Purpose
|
|
||||||
|
|
||||||
Email server.
|
|
||||||
|
|
||||||
# Notes
|
|
||||||
|
|
||||||
Configuration seems to be only through UI.
|
|
||||||
|
|
||||||
Not currently used.
|
|
||||||
@@ -20,10 +20,10 @@ import { Aside } from '@astrojs/starlight/components';
|
|||||||
|
|
||||||
# Purpose
|
# Purpose
|
||||||
|
|
||||||
Runs healthchecks on media files.
|
Runs health checks on media files.
|
||||||
|
|
||||||
# Notes
|
# Notes
|
||||||
|
|
||||||
Need to check the error queue, sometimes there are false errors.
|
Need to check the error queue, sometimes there are false errors.
|
||||||
|
|
||||||
Runs the files through ffmpeg on either cpu or gpu, but gpu generates more false errors.
|
Runs the files through ffmpeg on either CPU or GPU, but GPU generates more false errors.
|
||||||
|
|||||||
@@ -24,4 +24,4 @@ Gateway for the cluster, enables external access of the webpages for both host r
|
|||||||
|
|
||||||
# Notes
|
# Notes
|
||||||
|
|
||||||
Really want to swap it out for Cillium's built in Gateway implementation.
|
Really want to swap it out for Cillium's built-in Gateway implementation.
|
||||||
|
|||||||
@@ -16,8 +16,8 @@ hero:
|
|||||||
|
|
||||||
# Purpose
|
# Purpose
|
||||||
|
|
||||||
Archives Youtube videos.
|
Archives YouTube videos.
|
||||||
|
|
||||||
# Notes
|
# Notes
|
||||||
|
|
||||||
Mostly to ensure I get to keep videos that may be deleted or removed from Youtube. Also for videos I want to save to watch locally.
|
Mostly to ensure I get to keep videos that may be deleted or removed from YouTube. Also for videos I want to save to watch locally.
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ import { Aside } from '@astrojs/starlight/components';
|
|||||||
|
|
||||||
# Purpose
|
# Purpose
|
||||||
|
|
||||||
Geneates metrics from the Ubqituiy network devices.
|
Generates metrics from the Ubiquity network devices.
|
||||||
|
|
||||||
# Notes
|
# Notes
|
||||||
|
|
||||||
|
|||||||
@@ -24,8 +24,8 @@ Secrets manager.
|
|||||||
|
|
||||||
# Notes
|
# Notes
|
||||||
|
|
||||||
Retrieved by [External Secrets](https://docs.alexlebens.dev/applications/external-secrets/) for making them availible in cluster.
|
Retrieved by [External Secrets](https://docs.alexlebens.dev/applications/external-secrets/) for making them available in cluster.
|
||||||
|
|
||||||
Can store other secrets, but primarily used for cluster secrets.
|
Can store other secrets, but primarily used for cluster secrets.
|
||||||
|
|
||||||
And by 'secrets' this means passwords, keys, etc, that are confidential and non public.
|
And by 'secrets' this means passwords, keys, etc, that are confidential and non-public.
|
||||||
|
|||||||
18
src/content/docs/guides/3D Printer/mainsail.mdx
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
---
|
||||||
|
title: Mainsail
|
||||||
|
description: Web interface for the 3D Printer
|
||||||
|
hero:
|
||||||
|
tagline: Web interface for the 3D Printer
|
||||||
|
image:
|
||||||
|
file: https://raw.githubusercontent.com/mainsail-crew/mainsail/6130a0aa1776a138feaab691b9e4b1334b676b79/public/img/logo.svg
|
||||||
|
---
|
||||||
|
|
||||||
|
import { Aside } from '@astrojs/starlight/components';
|
||||||
|
|
||||||
|
<Aside type="tip">Quickly connect to its web page [here](http://printer.lebens-home.net/).</Aside>
|
||||||
|
|
||||||
|
# Overview
|
||||||
|
|
||||||
|
[Mainsail](https://docs.mainsail.xyz/) is the popular web interface for managing and controlling 3D printers with [Klipper](https://www.klipper3d.org/).
|
||||||
|
|
||||||
|
[Source](https://github.com/mainsail-crew/mainsail)
|
||||||
88
src/content/docs/guides/3D Printer/orcaslicer.mdx
Normal file
@@ -0,0 +1,88 @@
|
|||||||
|
---
|
||||||
|
title: Setting up Orcaslicer
|
||||||
|
description: Desktop software to connect to the 3D printer
|
||||||
|
hero:
|
||||||
|
tagline: Desktop software to connect to the 3D printer
|
||||||
|
image:
|
||||||
|
file: https://raw.githubusercontent.com/OrcaSlicer/OrcaSlicer/a167702038496b97e8495cc79f0c62660063ac87/resources/images/studio_logo.svg
|
||||||
|
---
|
||||||
|
|
||||||
|
import { Aside } from '@astrojs/starlight/components';
|
||||||
|
import { Steps } from '@astrojs/starlight/components';
|
||||||
|
import { Image } from 'astro:assets';
|
||||||
|
|
||||||
|
import orcaRelease from '@/assets/images/guides/orcaslicer/release.png';
|
||||||
|
import orcaAssets from '@/assets/images/guides/orcaslicer/assets.png';
|
||||||
|
import orcaPrepare from '@/assets/images/guides/orcaslicer/prepare-tab.png';
|
||||||
|
import orcaDropdown from '@/assets/images/guides/orcaslicer/dropdown.png';
|
||||||
|
import orcaCreatePrinter from '@/assets/images/guides/orcaslicer/create-printer.png';
|
||||||
|
import orcaPreset from '@/assets/images/guides/orcaslicer/preset.png';
|
||||||
|
import orcaConnection from '@/assets/images/guides/orcaslicer/connection.png';
|
||||||
|
import orcaConnectionSettings from '@/assets/images/guides/orcaslicer/connection-settings.png';
|
||||||
|
|
||||||
|
<Aside type="tip">Quickly connect to its web page [here](http://printer.lebens-home.net).</Aside>
|
||||||
|
|
||||||
|
# Download and Install OrcaSlicer
|
||||||
|
|
||||||
|
<Steps>
|
||||||
|
1. Go to the [Releases](https://github.com/OrcaSlicer/OrcaSlicer/releases) and find the 'Latest' Official Release. Some are tagged as 'Pre-release' such as nightlys or release candidates, ignore those.
|
||||||
|
|
||||||
|
<Image src={orcaRelease} alt="OrcaSlicer release page" width="800" />
|
||||||
|
|
||||||
|
2. At the bottom of a Release is the Assets section. Download the package for your OS such as the exe for Windows or the dmg for Mac.
|
||||||
|
|
||||||
|
<Image src={orcaAssets} alt="OrcaSlicer release page, assets section" width="800" />
|
||||||
|
|
||||||
|
4. Install the package.
|
||||||
|
</Steps>
|
||||||
|
|
||||||
|
## Build Plates
|
||||||
|
|
||||||
|
These will give you a model of the build plates the 3D printer will print upon for accurate sizing and representation.
|
||||||
|
|
||||||
|
Download them [with this link here](https://github.com/Guilouz/Creality-Helper-Script-Wiki/raw/main/downloads/OrcaSlicer/Creality_K1.zip) then extract the zip.
|
||||||
|
|
||||||
|
## Create Printer
|
||||||
|
|
||||||
|
<Steps>
|
||||||
|
1. Go to the 'Prepare' tab on the navigation menu.
|
||||||
|
|
||||||
|
<Image src={orcaPrepare} alt="OrcaSlicer prepare tab" width="800" />
|
||||||
|
|
||||||
|
2. At the left should be a menu for various options, find 'Printer' at the very top
|
||||||
|
|
||||||
|
<Image src={orcaDropdown} alt="OrcaSlicer printer options" width="800" />
|
||||||
|
|
||||||
|
3. Click on the drop-down and select `--Create Printer --`
|
||||||
|
|
||||||
|
<Image src={orcaCreatePrinter} alt="OrcaSlicer printer preset" width="800" />
|
||||||
|
- Printer Vendor is `Creality`
|
||||||
|
- Printer model is `Creality K1C`, this may be near the bottom of the list
|
||||||
|
- Nozzle diameter is `0.4 mm`
|
||||||
|
- Printable Space is `X 200 mm` and `Y 220 mm`
|
||||||
|
- Hot Bed STL should upload the build plate .stl file
|
||||||
|
- Hot Bed SVG should upload the build plate .png file
|
||||||
|
- Max Print Height is `200mm`
|
||||||
|
|
||||||
|
4. Click OK and will go to 'Import Preset'
|
||||||
|
|
||||||
|
<Image src={orcaPreset} alt="OrcaSlicer import preset" width="800" />
|
||||||
|
- For 'Printer Preset' select `Creality` and `Creality K1C @ 0.4 Nozzle`
|
||||||
|
- For 'Preset' click `Create Based on Current Printer`
|
||||||
|
- Under the 'Filament Preset Template' section check boxes for filaments types being used, likely just 'PLA'
|
||||||
|
- Under the 'Process Preset Template' section check `0.20mm Standard @Creality K1C`
|
||||||
|
</Steps>
|
||||||
|
|
||||||
|
## Connect to Printer
|
||||||
|
|
||||||
|
Once the Printer has been created slightly above and to the right should be an icon that looks like a wifi icon, click this.
|
||||||
|
<Image src={orcaConnection} alt="OrcaSlicer connection location" width="800" />
|
||||||
|
|
||||||
|
Enter settings to connect to the 3D printer. Check to see if the 3D printer is on.
|
||||||
|
<Image src={orcaConnectionSettings} alt="OrcaSlicer connection settings" width="800" />
|
||||||
|
|
||||||
|
- Host Type is `Octo/Klipper`
|
||||||
|
- Printer Agent is `OrcaSlicer`
|
||||||
|
- Hostname is `http://printer.lebens-home.net`
|
||||||
|
|
||||||
|
To confirm the connection go to the 'Device' tab at the top navigation menu.
|
||||||
57
src/content/docs/guides/3D Printer/print-model.mdx
Normal file
@@ -0,0 +1,57 @@
|
|||||||
|
---
|
||||||
|
title: Upload Model
|
||||||
|
description: Load model into OrcaSlicer
|
||||||
|
hero:
|
||||||
|
tagline: Load model into OrcaSlicer
|
||||||
|
image:
|
||||||
|
file: https://raw.githubusercontent.com/OrcaSlicer/OrcaSlicer/a167702038496b97e8495cc79f0c62660063ac87/resources/images/studio_logo.svg
|
||||||
|
---
|
||||||
|
|
||||||
|
import { Aside } from '@astrojs/starlight/components';
|
||||||
|
import { Steps } from '@astrojs/starlight/components';
|
||||||
|
import { Image } from 'astro:assets';
|
||||||
|
|
||||||
|
import orcaAddModel from '@/assets/images/guides/print-model/add-model.png';
|
||||||
|
import orcaOptions from '@/assets/images/guides/print-model/options.png';
|
||||||
|
import orcaSlice from '@/assets/images/guides/print-model/slice-button.png';
|
||||||
|
import orcaSupport from '@/assets/images/guides/print-model/support-settings.png';
|
||||||
|
import orcaInfill from '@/assets/images/guides/print-model/infill-settings.png';
|
||||||
|
import orcaPrint from '@/assets/images/guides/print-model/print-button.png';
|
||||||
|
|
||||||
|
<Aside type="tip">Quickly connect to its web page [here](http://printer.lebens-home.net).</Aside>
|
||||||
|
|
||||||
|
# Download a Model
|
||||||
|
|
||||||
|
There are various places to download models to print, such as [Thingverse](https://www.thingiverse.com/), [Printables](https://www.printables.com/), or [Makerworld](https://makerworld.com/en).
|
||||||
|
|
||||||
|
A default test model is [Benchy](https://www.thingiverse.com/thing:763622).
|
||||||
|
|
||||||
|
The most common file type to use are STL, but the printer can also use OBJ or 3MF
|
||||||
|
|
||||||
|
# Load and Print Model
|
||||||
|
|
||||||
|
<Steps>
|
||||||
|
1. In OrcaSlicer go to the 'Prepare' tab on the navigation menu. The sidebar isn't needed at this point, you may collapse it with a button at its top right, or by pressing `Shift-Tab`
|
||||||
|
|
||||||
|
2. The printer view should now fill the screen. At the top, below the navigation menu is a tool menu. The farthest left icon is a cube, click this to add a model.
|
||||||
|
|
||||||
|
<Image src={orcaAddModel} alt="OrcaSlicer add model button" width="800" />
|
||||||
|
|
||||||
|
3. This opens a menu to select a file to upload. Select the file you have downloaded and want to print.
|
||||||
|
|
||||||
|
4. Once the model is in the 3D view various options are available to arrange or make adjustments.
|
||||||
|
|
||||||
|
<Image src={orcaOptions} alt="OrcaSlicer options bar" width="800" />
|
||||||
|
|
||||||
|
5. Next is to convert this 3D representation into instructions for the printer, this process is called slicing. At the top right are two buttons, click 'Slice plate'. Depending on the complexity this may take time.
|
||||||
|
|
||||||
|
<Image src={orcaSlice} alt="OrcaSlicer slice button" width="800" />
|
||||||
|
|
||||||
|
6. Also depending on the complexity you may need to add support or change the infill. These are options in the sidebar. After any adjustments made the model should be sliced again.
|
||||||
|
|
||||||
|
<Image src={orcaSupport} alt="OrcaSlicer support settings" width="800" /><Image src={orcaInfill} alt="OrcaSlicer infill settings" width="800" />
|
||||||
|
|
||||||
|
7. Once ready and the representation in the printer view matches what is desired, click print to begin the process.
|
||||||
|
|
||||||
|
<Image src={orcaPrint} alt="OrcaSlicer print button" width="800" />
|
||||||
|
</Steps>
|
||||||
@@ -11,7 +11,7 @@ hero:
|
|||||||
|
|
||||||
[Reference OpenBao Documentation](https://openbao.org/docs/secrets/ssh/signed-ssh-certificates/)
|
[Reference OpenBao Documentation](https://openbao.org/docs/secrets/ssh/signed-ssh-certificates/)
|
||||||
|
|
||||||
I have set the documenation to use my own defaults and configuration. This also assumes a running and active OpenBao instance.
|
I have set the documentation to use my own defaults and configuration. This also assumes a running and active OpenBao instance.
|
||||||
|
|
||||||
## Enable the SSH CA
|
## Enable the SSH CA
|
||||||
|
|
||||||
@@ -103,7 +103,7 @@ alias bao-renew='bao write -field=signed_key ssh-client-signer/sign/alexlebens p
|
|||||||
|
|
||||||
### View Cert Details
|
### View Cert Details
|
||||||
|
|
||||||
For troubleshooting purposes or clafification use the follow to inspect the cert.
|
For troubleshooting purposes or clarification use the follow to inspect the cert.
|
||||||
```bash
|
```bash
|
||||||
ssh-keygen -Lf ~/.ssh/id_rsa_host-cert.pub
|
ssh-keygen -Lf ~/.ssh/id_rsa_host-cert.pub
|
||||||
```
|
```
|
||||||
@@ -1,10 +1,10 @@
|
|||||||
---
|
---
|
||||||
title: Documentation for my Homelab
|
title: Documentation
|
||||||
description: Guides and reference for my homelab infrastructure.
|
description: Guides and reference
|
||||||
hero:
|
hero:
|
||||||
tagline: Guides and reference for my homelab infrastructure.
|
tagline: Guides and reference
|
||||||
image:
|
image:
|
||||||
file: ../../assets/autumn_mountain.png
|
file: ../../assets/documentation.svg
|
||||||
actions:
|
actions:
|
||||||
- text: Introduction
|
- text: Introduction
|
||||||
link: /reference/introduction/
|
link: /reference/introduction/
|
||||||
@@ -13,7 +13,7 @@ hero:
|
|||||||
|
|
||||||
import { Card, CardGrid, LinkCard } from '@astrojs/starlight/components';
|
import { Card, CardGrid, LinkCard } from '@astrojs/starlight/components';
|
||||||
|
|
||||||
## Hightlights
|
## Highlights
|
||||||
|
|
||||||
<CardGrid stagger>
|
<CardGrid stagger>
|
||||||
<LinkCard
|
<LinkCard
|
||||||
@@ -26,4 +26,9 @@ import { Card, CardGrid, LinkCard } from '@astrojs/starlight/components';
|
|||||||
description="This site is built with Starlight, the Astro documentation theme. Check out the docs to learn more."
|
description="This site is built with Starlight, the Astro documentation theme. Check out the docs to learn more."
|
||||||
href="https://starlight.astro.build/"
|
href="https://starlight.astro.build/"
|
||||||
></LinkCard>
|
></LinkCard>
|
||||||
|
<LinkCard
|
||||||
|
title="Get started with the 3D Printer"
|
||||||
|
description="Guide for setting up OrcaSlicer"
|
||||||
|
href="https://docs.alexlebens.dev/guides/3d-printer/orcaslicer/"
|
||||||
|
></LinkCard>
|
||||||
</CardGrid>
|
</CardGrid>
|
||||||
|
|||||||
51
src/content/docs/reference/3d-printer.mdx
Normal file
@@ -0,0 +1,51 @@
|
|||||||
|
---
|
||||||
|
title: 3D Printer
|
||||||
|
description: Specifications and basic information about the 3D printer
|
||||||
|
hero:
|
||||||
|
tagline: Specifications and basic information about the 3D printer
|
||||||
|
image:
|
||||||
|
file: https://cdn.shopify.com/s/files/1/0893/0603/8637/files/K1-_02-2.png?v=1762200477
|
||||||
|
---
|
||||||
|
|
||||||
|
import { Aside } from '@astrojs/starlight/components';
|
||||||
|
|
||||||
|
<Aside type="tip">Quickly connect to its web page [here](http://printer.lebens-home.net/).</Aside>
|
||||||
|
|
||||||
|
# Overview
|
||||||
|
|
||||||
|
The 3D printer is a [Creality K1C](https://www.creality.com/products/k1c-carbon-3d-printer) which has several features that make it somewhat more user-friendly, such as auto leveling. Notably this model does not include automatic multi filament switching that newer versions have. It does use open source software and [Mainsail](https://docs.mainsail.xyz/) is installed as its web interface.
|
||||||
|
|
||||||
|
In order to print objects you first need a model, usually a stl file, then the model needs to be 'sliced' into instructions for the printer, then print. These guides document the process for this 3D printer.
|
||||||
|
|
||||||
|
## Specifications
|
||||||
|
|
||||||
|
| Atttribute| Size|
|
||||||
|
|---|----|
|
||||||
|
| Filament Diameter | 1.75mm |
|
||||||
|
| Nozzle Diameter | 0.4mm |
|
||||||
|
| Layer Height | 0.1-0.35mm |
|
||||||
|
| Printing Accuracy | 100±0.1mm |
|
||||||
|
| Build Volume | 220\*220\*250mm |
|
||||||
|
|
||||||
|
## Supported filament types
|
||||||
|
|
||||||
|
- ABS
|
||||||
|
- PLA
|
||||||
|
- PLA-CF
|
||||||
|
- PETG
|
||||||
|
- PET
|
||||||
|
- PET-CF
|
||||||
|
- TPU
|
||||||
|
- PA
|
||||||
|
- ASA
|
||||||
|
- PC
|
||||||
|
|
||||||
|
## Slicing file formats
|
||||||
|
|
||||||
|
- STL
|
||||||
|
- OBJ
|
||||||
|
- 3MF
|
||||||
|
|
||||||
|
## Printable file formats
|
||||||
|
|
||||||
|
- G-Code
|
||||||
@@ -1,8 +1,8 @@
|
|||||||
---
|
---
|
||||||
title: Introduction
|
title: Homelab
|
||||||
description: Overiew of the homelab
|
description: Overiew of the homelab
|
||||||
hero:
|
hero:
|
||||||
tagline: Steps followed for the v1.12.0 upgrade process
|
tagline: Overiew of the homelab
|
||||||
image:
|
image:
|
||||||
file: https://cdn.jsdelivr.net/gh/selfhst/icons@main/webp/docs-collaboration.webp
|
file: https://cdn.jsdelivr.net/gh/selfhst/icons@main/webp/docs-collaboration.webp
|
||||||
sidebar:
|
sidebar:
|
||||||