-
+
+
+
- 078 Silent Years - Essenes + + +
- 077 Silent Years - Herodians + + +
- 076 Silent Years - Sadducees + + +
- 075 Silent Years - Welcome to Hellenism + + +
- 074 - Silent Years - Synagogue + +
From 74dfb61d07deaaa5416f618bf45aa0583f5392fa Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sat, 14 Dec 2024 19:24:54 +0000 Subject: [PATCH] Deploy to GitHub pages --- 001-trust-the-story.html | 2589 ++ 002-knowing-when-to-say-enough.html | 2585 ++ 003-master-the-beast.html | 2585 ++ 004-his-bow-in-the-clouds.html | 2597 ++ 005-misplaced-curse.html | 2591 ++ 006-a-tale-of-a-tower.html | 2595 ++ 007-the-preface.html | 2595 ++ 008-buried-in-a-geneology.html | 2586 ++ 009-letting-go.html | 2585 ++ 010-walking-the-blood-path.html | 2587 ++ 011-here-i-am.html | 2585 ++ 012-a-mission-realized.html | 2585 ++ 013-grappling-with-god-part-1.html | 2609 ++ 014-grappling-with-god-part-2.html | 2595 ++ 015-into-the-pit.html | 2593 ++ 016-out-of-the-pit.html | 2603 ++ 017-a-god-who-hears-the-cry.html | 2585 ++ 018-a-tale-of-two-kingdoms.html | 2588 ++ 019-a-strengthened-heart.html | 2588 ++ 020-with-all-your-heart.html | 2590 ++ 021-with-all-your-soul-very.html | 2593 ++ 022-under-the-chuppah.html | 2591 ++ 023-falling-on-joyful-faces.html | 2595 ++ 024-creating-a-space.html | 2587 ++ 025-a-kingdom-of-what.html | 2601 ++ 026-images-of-the-desert.html | 2597 ++ ...images-of-the-desert-rotem-and-acacia.html | 2601 ++ ...ages-of-the-desert-ar-ar-and-tamarisk.html | 2585 ++ 030-lead-with-your-voice.html | 2610 ++ ...e-hardest-story-in-the-bible-for-mary.html | 2608 ++ 035-crossroads-of-destiny.html | 2596 ++ 036-the-redemption-cycle.html | 2590 ++ 037-a-love-story.html | 2604 ++ 038-a-donkey-herder-to-lead-us.html | 2594 ++ 039-a-king-after-god-s-own-heart.html | 2591 ++ 040-one-story-two-sources.html | 2591 ++ 041-the-story-behind-the-story.html | 2598 ++ 042-the-fire-of-elijah.html | 2587 ++ 043-go-in-peace.html | 2592 ++ 044-our-harps-in-the-trees.html | 2606 ++ 074-silent-years-synagogue.html | 401 + 075-silent-years-welcome-to-hellenism.html | 510 + 076-silent-years-sadducees.html | 447 + 077-silent-years-herodians.html | 357 + 078-silent-years-essenes.html | 420 + 404.html | 242 + about.html | 264 + abraham-and-melchizedek.html | 524 + abstract-base-class.html | 385 + adblock-coverage.html | 345 + ...o-your-dataframes-html-representation.html | 496 + add-space-to-your-lvm-on-ubuntu.html | 377 + adding-docker-daemon-json-broke-docker.html | 337 + ...era-to-motioneye-on-home-assistant-os.html | 340 + advent-2024-peace.html | 364 + and-vs.html | 559 + append-string-to-list-of-files-with-xarg.html | 335 + archive-2022-1.html | 444 + archive-2022-10.html | 433 + archive-2022-11.html | 427 + archive-2022-12.html | 423 + archive-2022-13.html | 550 + archive-2022-14.html | 601 + archive-2022-15.html | 601 + archive-2022-16.html | 601 + archive-2022-17.html | 371 + archive-2022-2.html | 435 + archive-2022-3.html | 444 + archive-2022-4.html | 449 + archive-2022-5.html | 446 + archive-2022-6.html | 437 + archive-2022-7.html | 428 + archive-2022-8.html | 449 + archive-2022-9.html | 435 + archive-2022.html | 444 + archive-2022.json | 337 + archive-2022.rss | 689 + archive-2023-1.html | 430 + archive-2023-2.html | 266 + archive-2023.html | 430 + archive-2023.json | 271 + archive-2023.rss | 499 + archive-2024-1.html | 432 + archive-2024-2.html | 438 + archive-2024-3.html | 410 + archive-2024.html | 432 + archive-2024.json | 326 + archive-2024.rss | 387 + archive.html | 270 + arr-client-config.html | 347 + author-nicpayne-1.html | 455 + author-nicpayne-10.html | 460 + author-nicpayne-11.html | 450 + author-nicpayne-12.html | 474 + author-nicpayne-13.html | 456 + author-nicpayne-14.html | 457 + author-nicpayne-15.html | 450 + author-nicpayne-16.html | 445 + author-nicpayne-17.html | 556 + author-nicpayne-18.html | 624 + author-nicpayne-19.html | 624 + author-nicpayne-2.html | 461 + author-nicpayne-20.html | 624 + author-nicpayne-21.html | 432 + author-nicpayne-3.html | 454 + author-nicpayne-4.html | 457 + author-nicpayne-5.html | 464 + author-nicpayne-6.html | 469 + author-nicpayne-7.html | 466 + author-nicpayne-8.html | 472 + author-nicpayne-9.html | 470 + author-nicpayne.html | 455 + author-nicpayne.json | 326 + author-nicpayne.rss | 387 + authors.html | 215 + benchmark-your-disks-with-fio.html | 408 + bp-the-golden-rule.html | 366 + ...to-get-python-log-messages-in-ipython.html | 377 + caps-lock-polybar.html | 345 + case-insensitive-search-in-vim.html | 339 + ...-of-encrypted-dataset-after-migration.html | 340 + chaos-dragon.html | 379 + chara-joy.html | 518 + cheat-on-your-man.html | 418 + check-your-bios-version-on-ubuntu.html | 341 + check-your-smart-status-with-smartctl.html | 390 + ...-network-on-ubuntu-22-04-with-netplan.html | 341 + ...-doc-to-pdf-with-headless-libreoffice.html | 344 + cron-for-nextcloud-in-docker.html | 373 + customize-k9s.html | 360 + d-and-uninterruptable-sleep.html | 361 + dataframe-memory-usage.html | 359 + dataframe-to-markdown.html | 392 + dataframe-to-styled-html.html | 385 + ...om-ubuntu-might-not-do-what-you-think.html | 337 + deques.html | 389 + ...tion-of-my-proposed-vimconf-2022-talk.html | 372 + destroying-tmux-sessions-with-fzf.html | 359 + ...o-save-ubuntu-22-04-server-networking.html | 339 + dns-broke-after-reboot-ubuntu-22-04.html | 349 + docker-copy-and-chown.html | 341 + docker-remote-add.html | 344 + don-t-forget-to-load-xmp.html | 337 + ...ic-form-values-with-jinja-and-fastapi.html | 442 + faithful.html | 552 + ffmpeg-10-bit-videos-to-8-bit.html | 340 + file-length.html | 360 + filepath-completion-in-neovim.html | 444 + filtering-emails-with-core-utils.html | 358 + fonts-in-vs-c-e.html | 341 + forms-with-fastapi-and-jinja.html | 395 + fx-json.html | 360 + git-ammend-to-a-commit.html | 337 + git-bisect.html | 437 + git-fetch-failing-check-your-config.html | 352 + git-repo-specific-ssh-key.html | 340 + git-worktrees-01.html | 393 + hebrew-bible-full-class.html | 567 + home-server-refactor.html | 444 + hostnamectl-to-easily-change-hostname.html | 372 + ...se-nextcloud-for-safe-central-storage.html | 352 + how-to-survive-the-flood.html | 375 + htop.html | 351 + i3-like-keyboard-mapping-in-pop-os.html | 381 + index-1.html | 432 + index-10.html | 437 + index-11.html | 427 + index-12.html | 451 + index-13.html | 433 + index-14.html | 434 + index-15.html | 427 + index-16.html | 422 + index-17.html | 533 + index-18.html | 601 + index-19.html | 601 + index-2.html | 438 + index-20.html | 601 + index-21.html | 409 + index-3.html | 431 + index-4.html | 434 + index-5.html | 441 + index-6.html | 446 + index-7.html | 443 + index-8.html | 449 + index-9.html | 447 + index.html | 443 + index.json | 326 + index.rss | 387 + initial-proxmox-setup.html | 341 + ...nding-on-tailscale-and-server-address.html | 411 + ipython-prompt.html | 417 + jellyfin-container-updates-for-hwe-amd.html | 347 + jellyfin-media-players.html | 378 + ...rd-to-keep-me-focused-on-my-own-ideas.html | 368 + kvm-network-interface-via-nat-ubuntu-20.html | 415 + limit-zfs-list-to-avoid-docker-vomit.html | 341 + local-dns-with-pi-hole.html | 339 + ...-to-find-what-s-using-your-filesystem.html | 340 + make-a-series-of-directories-fast.html | 341 + marmite.json | 68 + media/builtin-calendar.png | Bin 0 -> 405680 bytes media/df-memory-usage.png | Bin 0 -> 349606 bytes media/glances-iowait.png | Bin 0 -> 71188 bytes media/htop-d.png | Bin 0 -> 40980 bytes media/ipython-prompt-no-git.png | Bin 0 -> 7969 bytes media/ipython-prompt.png | Bin 0 -> 8198 bytes media/nic-round.png | Bin 0 -> 62396 bytes media/og-01.png | Bin 0 -> 242000 bytes media/og-02.png | Bin 0 -> 594971 bytes media/plotly-streamlit.gif | Bin 0 -> 144880 bytes media/py-print-align.png | Bin 0 -> 78179 bytes media/python-crop.png | Bin 0 -> 43444 bytes media/python.png | Bin 0 -> 54474 bytes media/sh-prompt.png | Bin 0 -> 30527 bytes media/skimpy-ipython.png | Bin 0 -> 157001 bytes media/skimpy-ipython2.png | Bin 0 -> 162753 bytes media/skimpy-zsh.png | Bin 0 -> 160901 bytes media/tiddlywiki-example.png | Bin 0 -> 51669 bytes media/truenas-wireguard.png | Bin 0 -> 46829 bytes media/typed-dict-warning.png | Bin 0 -> 6886 bytes media/typed-dict.png | Bin 0 -> 4026 bytes media/zsh-oh-my-zsh-prompt.png | Bin 0 -> 32247 bytes media/zsh-prompt.png | Bin 0 -> 22020 bytes media/zsh-starship-prompt.png | Bin 0 -> 45970 bytes mocking-s3-with-moto.html | 411 + modal-labs.html | 425 + mounting-exfat-usb-in-linux.html | 394 + mu.html | 445 + my-passmark-scores.html | 370 + netplan-change-from-focal-to-jammy.html | 365 + new-lines-in-markdown-tables.html | 376 + nextcloud-docker-upgrade-error.html | 341 + ...-permissions-with-zfs-and-ansible-nas.html | 377 + olivet-mens-group-james-2023.html | 585 + on-earth-as-it-is-in-heaven.html | 414 + ...lick-to-dockerized-app-from-portainer.html | 335 + opnsense-bootstrap-recovery.html | 317 + pages-1.html | 217 + pages.html | 217 + pandas-select-dtypes.html | 354 + pandas-string-contains.html | 396 + ...gx-filtering-on-ids-instead-of-values.html | 342 + ...reserve-console-output-in-ssh-session.html | 343 + pipx.html | 392 + playing-with-mdformat.html | 344 + plotly-and-streamlit.html | 474 + plug-snapshot-to-save-your-life.html | 420 + plug-snapshot.html | 339 + polybar-01.html | 455 + psutil-01.html | 390 + pyclean.html | 375 + python-builtin-calendar.html | 357 + python-eval.html | 368 + python-f-string-align.html | 365 + ...rytped-datasets-with-sane-permissions.html | 352 + recovering-opnsense.html | 368 + reflection-wisdom-in-relationships-2.html | 387 + reflection-wisdom-in-relationships.html | 343 + ...fter-messing-around-on-the-filesystem.html | 341 + ...x-nextcloud-after-adding-data-via-cli.html | 371 + ...about-ssh-copy-id-for-ssh-and-ansible.html | 341 + remove-zfs-dataset-specific-snapshots.html | 353 + reset-ssh-key-passphrase.html | 351 + restart-kde-plasma.html | 347 + robots.txt | 5 + rsync-like-a-pro.html | 361 + sabbath.html | 670 + ...untu-22-needs-inherit-permissions-set.html | 341 + screwtape.html | 698 + see-git-history-about-one-file.html | 337 + see-zfs-snapshot-disk-usage.html | 343 + ...cker-registry-with-proxy-pull-through.html | 357 + self-hosted-media.html | 493 + session-2-intro.html | 2600 ++ session-3-intro.html | 413 + setup-kvm-to-boot-from-local-pxe-server.html | 341 + shalom-and-peace.html | 514 + simple-port-forwarding-opnsense.html | 341 + skimpy.html | 372 + stable-diffusion-notes.html | 474 + starship.html | 393 + static/Atkinson-Hyperlegible-Regular-102.woff | Bin 0 -> 22792 bytes static/avatar-placeholder.png | Bin 0 -> 1511 bytes static/colorschemes/catppuccin.css | 50 + static/colorschemes/clean.css | 77 + static/colorschemes/dracula.css | 50 + static/colorschemes/github.css | 48 + static/colorschemes/gruvbox.css | 48 + static/colorschemes/iceberg.css | 48 + static/colorschemes/monokai.css | 48 + static/colorschemes/nord.css | 48 + static/colorschemes/one.css | 48 + static/colorschemes/solarized.css | 58 + static/colorschemes/typewriter.css | 48 + static/custom.css | 1 + static/custom.js | 1 + static/favicon.ico | Bin 0 -> 39025 bytes static/marmite.css | 749 + static/marmite.js | 192 + static/pico.min.css | 4 + static/robots.txt | 5 + static/search.js | 83 + static/search_index.json | 1 + stow-target.html | 349 + stow.html | 355 + streams.html | 212 + stylus-for-custom-webpage-themes.html | 347 + ...-another-list-with-itertools-compress.html | 335 + suda-vim-for-sudo-access-to-files.html | 343 + suddenly-ssh-requires-a-password.html | 343 + ...from-altacv-to-rendercv-for-my-resume.html | 337 + systemd-timer-for-syncoid.html | 381 + tag-bash-1.html | 305 + tag-bash.html | 305 + tag-bash.json | 121 + tag-bash.rss | 63 + tag-bema-1.html | 513 + tag-bema-2.html | 601 + tag-bema-3.html | 601 + tag-bema-4.html | 601 + tag-bema-5.html | 485 + tag-bema.html | 513 + tag-bema.json | 309 + tag-bema.rss | 20419 ++++++++++++++++ tag-bible-project-1.html | 441 + tag-bible-project-2.html | 362 + tag-bible-project.html | 441 + tag-bible-project.json | 324 + tag-bible-project.rss | 1534 ++ tag-blog-1.html | 283 + tag-blog.html | 283 + tag-blog.json | 95 + tag-blog.rss | 354 + tag-books-1.html | 224 + tag-books.html | 224 + tag-books.json | 30 + tag-books.rss | 345 + tag-cli-1.html | 433 + tag-cli-2.html | 433 + tag-cli-3.html | 259 + tag-cli.html | 433 + tag-cli.json | 338 + tag-cli.rss | 249 + tag-containers-1.html | 222 + tag-containers.html | 222 + tag-containers.json | 31 + tag-containers.rss | 35 + tag-data-1.html | 267 + tag-data.html | 267 + tag-data.json | 75 + tag-data.rss | 273 + tag-faith-1.html | 439 + tag-faith-2.html | 432 + tag-faith.html | 439 + tag-faith.json | 323 + tag-faith.rss | 1494 ++ tag-git-1.html | 281 + tag-git.html | 281 + tag-git.json | 94 + tag-git.rss | 242 + tag-homelab-1.html | 431 + tag-homelab-2.html | 425 + tag-homelab-3.html | 436 + tag-homelab-4.html | 443 + tag-homelab-5.html | 432 + tag-homelab-6.html | 429 + tag-homelab-7.html | 240 + tag-homelab.html | 431 + tag-homelab.json | 337 + tag-homelab.rss | 187 + tag-homepage-1.html | 245 + tag-homepage.html | 245 + tag-homepage.json | 53 + tag-homepage.rss | 55 + tag-infrastructure-1.html | 222 + tag-infrastructure.html | 222 + tag-infrastructure.json | 31 + tag-infrastructure.rss | 4 + tag-linux-1.html | 440 + tag-linux-2.html | 428 + tag-linux-3.html | 426 + tag-linux-4.html | 449 + tag-linux-5.html | 425 + tag-linux-6.html | 262 + tag-linux.html | 440 + tag-linux.json | 339 + tag-linux.rss | 252 + tag-olivet-1.html | 227 + tag-olivet.html | 227 + tag-olivet.json | 30 + tag-olivet.rss | 240 + tag-python-1.html | 431 + tag-python-2.html | 440 + tag-python-3.html | 423 + tag-python-4.html | 258 + tag-python.html | 431 + tag-python.json | 332 + tag-python.rss | 812 + tag-tech-1.html | 433 + tag-tech-10.html | 433 + tag-tech-11.html | 434 + tag-tech-12.html | 427 + tag-tech-13.html | 423 + tag-tech-14.html | 322 + tag-tech-2.html | 425 + tag-tech-3.html | 438 + tag-tech-4.html | 440 + tag-tech-5.html | 431 + tag-tech-6.html | 449 + tag-tech-7.html | 440 + tag-tech-8.html | 426 + tag-tech-9.html | 450 + tag-tech.html | 433 + tag-tech.json | 337 + tag-tech.rss | 227 + tag-terminal-1.html | 293 + tag-terminal.html | 293 + tag-terminal.json | 97 + tag-terminal.rss | 61 + tag-til-1.html | 308 + tag-til.html | 308 + tag-til.json | 117 + tag-til.rss | 119 + tag-vim-1.html | 436 + tag-vim-2.html | 270 + tag-vim.html | 436 + tag-vim.json | 268 + tag-vim.rss | 223 + tag-webdev-1.html | 255 + tag-webdev.html | 255 + tag-webdev.json | 53 + tag-webdev.rss | 47 + tag-zfs-1.html | 439 + tag-zfs-2.html | 283 + tag-zfs.html | 439 + tag-zfs.json | 298 + tag-zfs.rss | 199 + tags.html | 647 + tdarr-worker-nodes-share-the-cache.html | 373 + tdarr.html | 333 + terraform-01.html | 401 + the-flood-story-quilt-analogy.html | 417 + the-flood-story-types-and-baptism.html | 437 + the-two-houses.html | 364 + tiddly-wiki.html | 388 + traefik-01.html | 555 + tree-of-life.html | 484 + tree.html | 399 + ...n-to-web-server-on-another-box-on-lan.html | 337 + truenas-and-wireguard.html | 402 + typeddict.html | 404 + ubuntu-static-ip.html | 349 + unpack-anywhere-with-star.html | 360 + ...ading-your-kernel-can-f-you-up-whoops.html | 339 + ...n-standard-named-ssh-keys-with-github.html | 371 + use-the-right-lspsage-you-dope.html | 335 + vim-auto-space.html | 338 + vim-spell-check.html | 389 + webservers-and-indexes.html | 379 + welcome.html | 339 + wireguard.html | 385 + wish-list-with-fastapi.html | 577 + ...quired-to-create-managed-color-device.html | 354 + you-can-embed-gifs.html | 344 + zfs-permissions-for-sanoid-syncoid.html | 341 + 465 files changed, 271659 insertions(+) create mode 100644 001-trust-the-story.html create mode 100644 002-knowing-when-to-say-enough.html create mode 100644 003-master-the-beast.html create mode 100644 004-his-bow-in-the-clouds.html create mode 100644 005-misplaced-curse.html create mode 100644 006-a-tale-of-a-tower.html create mode 100644 007-the-preface.html create mode 100644 008-buried-in-a-geneology.html create mode 100644 009-letting-go.html create mode 100644 010-walking-the-blood-path.html create mode 100644 011-here-i-am.html create mode 100644 012-a-mission-realized.html create mode 100644 013-grappling-with-god-part-1.html create mode 100644 014-grappling-with-god-part-2.html create mode 100644 015-into-the-pit.html create mode 100644 016-out-of-the-pit.html create mode 100644 017-a-god-who-hears-the-cry.html create mode 100644 018-a-tale-of-two-kingdoms.html create mode 100644 019-a-strengthened-heart.html create mode 100644 020-with-all-your-heart.html create mode 100644 021-with-all-your-soul-very.html create mode 100644 022-under-the-chuppah.html create mode 100644 023-falling-on-joyful-faces.html create mode 100644 024-creating-a-space.html create mode 100644 025-a-kingdom-of-what.html create mode 100644 026-images-of-the-desert.html create mode 100644 027-images-of-the-desert-rotem-and-acacia.html create mode 100644 028-images-of-the-desert-ar-ar-and-tamarisk.html create mode 100644 030-lead-with-your-voice.html create mode 100644 034-the-hardest-story-in-the-bible-for-mary.html create mode 100644 035-crossroads-of-destiny.html create mode 100644 036-the-redemption-cycle.html create mode 100644 037-a-love-story.html create mode 100644 038-a-donkey-herder-to-lead-us.html create mode 100644 039-a-king-after-god-s-own-heart.html create mode 100644 040-one-story-two-sources.html create mode 100644 041-the-story-behind-the-story.html create mode 100644 042-the-fire-of-elijah.html create mode 100644 043-go-in-peace.html create mode 100644 044-our-harps-in-the-trees.html create mode 100644 074-silent-years-synagogue.html create mode 100644 075-silent-years-welcome-to-hellenism.html create mode 100644 076-silent-years-sadducees.html create mode 100644 077-silent-years-herodians.html create mode 100644 078-silent-years-essenes.html create mode 100644 404.html create mode 100644 about.html create mode 100644 abraham-and-melchizedek.html create mode 100644 abstract-base-class.html create mode 100644 adblock-coverage.html create mode 100644 add-colored-indicators-to-your-dataframes-html-representation.html create mode 100644 add-space-to-your-lvm-on-ubuntu.html create mode 100644 adding-docker-daemon-json-broke-docker.html create mode 100644 adding-ip-camera-to-motioneye-on-home-assistant-os.html create mode 100644 advent-2024-peace.html create mode 100644 and-vs.html create mode 100644 append-string-to-list-of-files-with-xarg.html create mode 100644 archive-2022-1.html create mode 100644 archive-2022-10.html create mode 100644 archive-2022-11.html create mode 100644 archive-2022-12.html create mode 100644 archive-2022-13.html create mode 100644 archive-2022-14.html create mode 100644 archive-2022-15.html create mode 100644 archive-2022-16.html create mode 100644 archive-2022-17.html create mode 100644 archive-2022-2.html create mode 100644 archive-2022-3.html create mode 100644 archive-2022-4.html create mode 100644 archive-2022-5.html create mode 100644 archive-2022-6.html create mode 100644 archive-2022-7.html create mode 100644 archive-2022-8.html create mode 100644 archive-2022-9.html create mode 100644 archive-2022.html create mode 100644 archive-2022.json create mode 100644 archive-2022.rss create mode 100644 archive-2023-1.html create mode 100644 archive-2023-2.html create mode 100644 archive-2023.html create mode 100644 archive-2023.json create mode 100644 archive-2023.rss create mode 100644 archive-2024-1.html create mode 100644 archive-2024-2.html create mode 100644 archive-2024-3.html create mode 100644 archive-2024.html create mode 100644 archive-2024.json create mode 100644 archive-2024.rss create mode 100644 archive.html create mode 100644 arr-client-config.html create mode 100644 author-nicpayne-1.html create mode 100644 author-nicpayne-10.html create mode 100644 author-nicpayne-11.html create mode 100644 author-nicpayne-12.html create mode 100644 author-nicpayne-13.html create mode 100644 author-nicpayne-14.html create mode 100644 author-nicpayne-15.html create mode 100644 author-nicpayne-16.html create mode 100644 author-nicpayne-17.html create mode 100644 author-nicpayne-18.html create mode 100644 author-nicpayne-19.html create mode 100644 author-nicpayne-2.html create mode 100644 author-nicpayne-20.html create mode 100644 author-nicpayne-21.html create mode 100644 author-nicpayne-3.html create mode 100644 author-nicpayne-4.html create mode 100644 author-nicpayne-5.html create mode 100644 author-nicpayne-6.html create mode 100644 author-nicpayne-7.html create mode 100644 author-nicpayne-8.html create mode 100644 author-nicpayne-9.html create mode 100644 author-nicpayne.html create mode 100644 author-nicpayne.json create mode 100644 author-nicpayne.rss create mode 100644 authors.html create mode 100644 benchmark-your-disks-with-fio.html create mode 100644 bp-the-golden-rule.html create mode 100644 call-basicconfig-to-get-python-log-messages-in-ipython.html create mode 100644 caps-lock-polybar.html create mode 100644 case-insensitive-search-in-vim.html create mode 100644 changing-zfs-key-for-child-datasets-of-encrypted-dataset-after-migration.html create mode 100644 chaos-dragon.html create mode 100644 chara-joy.html create mode 100644 cheat-on-your-man.html create mode 100644 check-your-bios-version-on-ubuntu.html create mode 100644 check-your-smart-status-with-smartctl.html create mode 100644 configure-bridge-network-on-ubuntu-22-04-with-netplan.html create mode 100644 convert-word-doc-to-pdf-with-headless-libreoffice.html create mode 100644 cron-for-nextcloud-in-docker.html create mode 100644 customize-k9s.html create mode 100644 d-and-uninterruptable-sleep.html create mode 100644 dataframe-memory-usage.html create mode 100644 dataframe-to-markdown.html create mode 100644 dataframe-to-styled-html.html create mode 100644 deleting-files-on-remote-storage-from-ubuntu-might-not-do-what-you-think.html create mode 100644 deques.html create mode 100644 description-of-my-proposed-vimconf-2022-talk.html create mode 100644 destroying-tmux-sessions-with-fzf.html create mode 100644 dhcp-restart-to-save-ubuntu-22-04-server-networking.html create mode 100644 dns-broke-after-reboot-ubuntu-22-04.html create mode 100644 docker-copy-and-chown.html create mode 100644 docker-remote-add.html create mode 100644 don-t-forget-to-load-xmp.html create mode 100644 dynamic-form-values-with-jinja-and-fastapi.html create mode 100644 faithful.html create mode 100644 ffmpeg-10-bit-videos-to-8-bit.html create mode 100644 file-length.html create mode 100644 filepath-completion-in-neovim.html create mode 100644 filtering-emails-with-core-utils.html create mode 100644 fonts-in-vs-c-e.html create mode 100644 forms-with-fastapi-and-jinja.html create mode 100644 fx-json.html create mode 100644 git-ammend-to-a-commit.html create mode 100644 git-bisect.html create mode 100644 git-fetch-failing-check-your-config.html create mode 100644 git-repo-specific-ssh-key.html create mode 100644 git-worktrees-01.html create mode 100644 hebrew-bible-full-class.html create mode 100644 home-server-refactor.html create mode 100644 hostnamectl-to-easily-change-hostname.html create mode 100644 how-i-use-nextcloud-for-safe-central-storage.html create mode 100644 how-to-survive-the-flood.html create mode 100644 htop.html create mode 100644 i3-like-keyboard-mapping-in-pop-os.html create mode 100644 index-1.html create mode 100644 index-10.html create mode 100644 index-11.html create mode 100644 index-12.html create mode 100644 index-13.html create mode 100644 index-14.html create mode 100644 index-15.html create mode 100644 index-16.html create mode 100644 index-17.html create mode 100644 index-18.html create mode 100644 index-19.html create mode 100644 index-2.html create mode 100644 index-20.html create mode 100644 index-21.html create mode 100644 index-3.html create mode 100644 index-4.html create mode 100644 index-5.html create mode 100644 index-6.html create mode 100644 index-7.html create mode 100644 index-8.html create mode 100644 index-9.html create mode 100644 index.html create mode 100644 index.json create mode 100644 index.rss create mode 100644 initial-proxmox-setup.html create mode 100644 interesting-ips-between-jellyfin-clients-and-server-depending-on-tailscale-and-server-address.html create mode 100644 ipython-prompt.html create mode 100644 jellyfin-container-updates-for-hwe-amd.html create mode 100644 jellyfin-media-players.html create mode 100644 kanboard-to-keep-me-focused-on-my-own-ideas.html create mode 100644 kvm-network-interface-via-nat-ubuntu-20.html create mode 100644 limit-zfs-list-to-avoid-docker-vomit.html create mode 100644 local-dns-with-pi-hole.html create mode 100644 lsof-to-find-what-s-using-your-filesystem.html create mode 100644 make-a-series-of-directories-fast.html create mode 100644 marmite.json create mode 100644 media/builtin-calendar.png create mode 100644 media/df-memory-usage.png create mode 100644 media/glances-iowait.png create mode 100644 media/htop-d.png create mode 100644 media/ipython-prompt-no-git.png create mode 100644 media/ipython-prompt.png create mode 100644 media/nic-round.png create mode 100644 media/og-01.png create mode 100644 media/og-02.png create mode 100644 media/plotly-streamlit.gif create mode 100644 media/py-print-align.png create mode 100644 media/python-crop.png create mode 100644 media/python.png create mode 100644 media/sh-prompt.png create mode 100644 media/skimpy-ipython.png create mode 100644 media/skimpy-ipython2.png create mode 100644 media/skimpy-zsh.png create mode 100644 media/tiddlywiki-example.png create mode 100644 media/truenas-wireguard.png create mode 100644 media/typed-dict-warning.png create mode 100644 media/typed-dict.png create mode 100644 media/zsh-oh-my-zsh-prompt.png create mode 100644 media/zsh-prompt.png create mode 100644 media/zsh-starship-prompt.png create mode 100644 mocking-s3-with-moto.html create mode 100644 modal-labs.html create mode 100644 mounting-exfat-usb-in-linux.html create mode 100644 mu.html create mode 100644 my-passmark-scores.html create mode 100644 netplan-change-from-focal-to-jammy.html create mode 100644 new-lines-in-markdown-tables.html create mode 100644 nextcloud-docker-upgrade-error.html create mode 100644 nextcloud-permissions-with-zfs-and-ansible-nas.html create mode 100644 olivet-mens-group-james-2023.html create mode 100644 on-earth-as-it-is-in-heaven.html create mode 100644 one-click-to-dockerized-app-from-portainer.html create mode 100644 opnsense-bootstrap-recovery.html create mode 100644 pages-1.html create mode 100644 pages.html create mode 100644 pandas-select-dtypes.html create mode 100644 pandas-string-contains.html create mode 100644 paperless-ngx-filtering-on-ids-instead-of-values.html create mode 100644 pipe-to-a-pager-to-preserve-console-output-in-ssh-session.html create mode 100644 pipx.html create mode 100644 playing-with-mdformat.html create mode 100644 plotly-and-streamlit.html create mode 100644 plug-snapshot-to-save-your-life.html create mode 100644 plug-snapshot.html create mode 100644 polybar-01.html create mode 100644 psutil-01.html create mode 100644 pyclean.html create mode 100644 python-builtin-calendar.html create mode 100644 python-eval.html create mode 100644 python-f-string-align.html create mode 100644 quick-setup-of-zfs-encrytped-datasets-with-sane-permissions.html create mode 100644 recovering-opnsense.html create mode 100644 reflection-wisdom-in-relationships-2.html create mode 100644 reflection-wisdom-in-relationships.html create mode 100644 refresh-nextcloud-groupfolders-after-messing-around-on-the-filesystem.html create mode 100644 reindex-nextcloud-after-adding-data-via-cli.html create mode 100644 reminder-about-ssh-copy-id-for-ssh-and-ansible.html create mode 100644 remove-zfs-dataset-specific-snapshots.html create mode 100644 reset-ssh-key-passphrase.html create mode 100644 restart-kde-plasma.html create mode 100644 robots.txt create mode 100644 rsync-like-a-pro.html create mode 100644 sabbath.html create mode 100644 samba-on-ubuntu-22-needs-inherit-permissions-set.html create mode 100644 screwtape.html create mode 100644 see-git-history-about-one-file.html create mode 100644 see-zfs-snapshot-disk-usage.html create mode 100644 self-hosted-docker-registry-with-proxy-pull-through.html create mode 100644 self-hosted-media.html create mode 100644 session-2-intro.html create mode 100644 session-3-intro.html create mode 100644 setup-kvm-to-boot-from-local-pxe-server.html create mode 100644 shalom-and-peace.html create mode 100644 simple-port-forwarding-opnsense.html create mode 100644 skimpy.html create mode 100644 stable-diffusion-notes.html create mode 100644 starship.html create mode 100644 static/Atkinson-Hyperlegible-Regular-102.woff create mode 100644 static/avatar-placeholder.png create mode 100644 static/colorschemes/catppuccin.css create mode 100644 static/colorschemes/clean.css create mode 100644 static/colorschemes/dracula.css create mode 100644 static/colorschemes/github.css create mode 100644 static/colorschemes/gruvbox.css create mode 100644 static/colorschemes/iceberg.css create mode 100644 static/colorschemes/monokai.css create mode 100644 static/colorschemes/nord.css create mode 100644 static/colorschemes/one.css create mode 100644 static/colorschemes/solarized.css create mode 100644 static/colorschemes/typewriter.css create mode 100644 static/custom.css create mode 100644 static/custom.js create mode 100644 static/favicon.ico create mode 100644 static/marmite.css create mode 100644 static/marmite.js create mode 100644 static/pico.min.css create mode 100644 static/robots.txt create mode 100644 static/search.js create mode 100644 static/search_index.json create mode 100644 stow-target.html create mode 100644 stow.html create mode 100644 streams.html create mode 100644 stylus-for-custom-webpage-themes.html create mode 100644 subset-a-list-based-on-values-in-another-list-with-itertools-compress.html create mode 100644 suda-vim-for-sudo-access-to-files.html create mode 100644 suddenly-ssh-requires-a-password.html create mode 100644 switching-from-altacv-to-rendercv-for-my-resume.html create mode 100644 systemd-timer-for-syncoid.html create mode 100644 tag-bash-1.html create mode 100644 tag-bash.html create mode 100644 tag-bash.json create mode 100644 tag-bash.rss create mode 100644 tag-bema-1.html create mode 100644 tag-bema-2.html create mode 100644 tag-bema-3.html create mode 100644 tag-bema-4.html create mode 100644 tag-bema-5.html create mode 100644 tag-bema.html create mode 100644 tag-bema.json create mode 100644 tag-bema.rss create mode 100644 tag-bible-project-1.html create mode 100644 tag-bible-project-2.html create mode 100644 tag-bible-project.html create mode 100644 tag-bible-project.json create mode 100644 tag-bible-project.rss create mode 100644 tag-blog-1.html create mode 100644 tag-blog.html create mode 100644 tag-blog.json create mode 100644 tag-blog.rss create mode 100644 tag-books-1.html create mode 100644 tag-books.html create mode 100644 tag-books.json create mode 100644 tag-books.rss create mode 100644 tag-cli-1.html create mode 100644 tag-cli-2.html create mode 100644 tag-cli-3.html create mode 100644 tag-cli.html create mode 100644 tag-cli.json create mode 100644 tag-cli.rss create mode 100644 tag-containers-1.html create mode 100644 tag-containers.html create mode 100644 tag-containers.json create mode 100644 tag-containers.rss create mode 100644 tag-data-1.html create mode 100644 tag-data.html create mode 100644 tag-data.json create mode 100644 tag-data.rss create mode 100644 tag-faith-1.html create mode 100644 tag-faith-2.html create mode 100644 tag-faith.html create mode 100644 tag-faith.json create mode 100644 tag-faith.rss create mode 100644 tag-git-1.html create mode 100644 tag-git.html create mode 100644 tag-git.json create mode 100644 tag-git.rss create mode 100644 tag-homelab-1.html create mode 100644 tag-homelab-2.html create mode 100644 tag-homelab-3.html create mode 100644 tag-homelab-4.html create mode 100644 tag-homelab-5.html create mode 100644 tag-homelab-6.html create mode 100644 tag-homelab-7.html create mode 100644 tag-homelab.html create mode 100644 tag-homelab.json create mode 100644 tag-homelab.rss create mode 100644 tag-homepage-1.html create mode 100644 tag-homepage.html create mode 100644 tag-homepage.json create mode 100644 tag-homepage.rss create mode 100644 tag-infrastructure-1.html create mode 100644 tag-infrastructure.html create mode 100644 tag-infrastructure.json create mode 100644 tag-infrastructure.rss create mode 100644 tag-linux-1.html create mode 100644 tag-linux-2.html create mode 100644 tag-linux-3.html create mode 100644 tag-linux-4.html create mode 100644 tag-linux-5.html create mode 100644 tag-linux-6.html create mode 100644 tag-linux.html create mode 100644 tag-linux.json create mode 100644 tag-linux.rss create mode 100644 tag-olivet-1.html create mode 100644 tag-olivet.html create mode 100644 tag-olivet.json create mode 100644 tag-olivet.rss create mode 100644 tag-python-1.html create mode 100644 tag-python-2.html create mode 100644 tag-python-3.html create mode 100644 tag-python-4.html create mode 100644 tag-python.html create mode 100644 tag-python.json create mode 100644 tag-python.rss create mode 100644 tag-tech-1.html create mode 100644 tag-tech-10.html create mode 100644 tag-tech-11.html create mode 100644 tag-tech-12.html create mode 100644 tag-tech-13.html create mode 100644 tag-tech-14.html create mode 100644 tag-tech-2.html create mode 100644 tag-tech-3.html create mode 100644 tag-tech-4.html create mode 100644 tag-tech-5.html create mode 100644 tag-tech-6.html create mode 100644 tag-tech-7.html create mode 100644 tag-tech-8.html create mode 100644 tag-tech-9.html create mode 100644 tag-tech.html create mode 100644 tag-tech.json create mode 100644 tag-tech.rss create mode 100644 tag-terminal-1.html create mode 100644 tag-terminal.html create mode 100644 tag-terminal.json create mode 100644 tag-terminal.rss create mode 100644 tag-til-1.html create mode 100644 tag-til.html create mode 100644 tag-til.json create mode 100644 tag-til.rss create mode 100644 tag-vim-1.html create mode 100644 tag-vim-2.html create mode 100644 tag-vim.html create mode 100644 tag-vim.json create mode 100644 tag-vim.rss create mode 100644 tag-webdev-1.html create mode 100644 tag-webdev.html create mode 100644 tag-webdev.json create mode 100644 tag-webdev.rss create mode 100644 tag-zfs-1.html create mode 100644 tag-zfs-2.html create mode 100644 tag-zfs.html create mode 100644 tag-zfs.json create mode 100644 tag-zfs.rss create mode 100644 tags.html create mode 100644 tdarr-worker-nodes-share-the-cache.html create mode 100644 tdarr.html create mode 100644 terraform-01.html create mode 100644 the-flood-story-quilt-analogy.html create mode 100644 the-flood-story-types-and-baptism.html create mode 100644 the-two-houses.html create mode 100644 tiddly-wiki.html create mode 100644 traefik-01.html create mode 100644 tree-of-life.html create mode 100644 tree.html create mode 100644 trick-to-login-to-web-server-on-another-box-on-lan.html create mode 100644 truenas-and-wireguard.html create mode 100644 typeddict.html create mode 100644 ubuntu-static-ip.html create mode 100644 unpack-anywhere-with-star.html create mode 100644 upgrading-your-kernel-can-f-you-up-whoops.html create mode 100644 use-non-standard-named-ssh-keys-with-github.html create mode 100644 use-the-right-lspsage-you-dope.html create mode 100644 vim-auto-space.html create mode 100644 vim-spell-check.html create mode 100644 webservers-and-indexes.html create mode 100644 welcome.html create mode 100644 wireguard.html create mode 100644 wish-list-with-fastapi.html create mode 100644 xrdp-authentication-required-to-create-managed-color-device.html create mode 100644 you-can-embed-gifs.html create mode 100644 zfs-permissions-for-sanoid-syncoid.html diff --git a/001-trust-the-story.html b/001-trust-the-story.html new file mode 100644 index 00000000..07869070 --- /dev/null +++ b/001-trust-the-story.html @@ -0,0 +1,2589 @@ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +<!doctype html>
+ + + + + + + +presentation: https://bemadiscipleship.s3.us-east-2.amazonaws.com/BEMA+015+Into+the+Pit.pdf
Text
Genesis 37-40
Observations
Genesis 39:7–9 (LEB)
+7And it happened that after these things his master’s wife cast her eyes on Joseph, and she said, “Lie with me.”
+8But he refused and said to his master’s wife, “Look, my master does not worry about what is in the house, and everything he owns he has put in my hand.
+9He has no greater authority in this house than me, and he has not withheld anything from me except you, since you are his wife. Now how could I do this great wickedness and sin against God?”
+
+Genesis 40:14–15 (LEB)
+14But remember me when it goes well with you, and please may you show kindness with respect to me, and mention me to Pharaoh, and bring me out of this house.
+15For I was surely kidnapped from the land of the Hebrews, and here also I have done nothing that they should put me in this pit.”
+Genesis 40:14–15 (LEB)
<!doctype html>
+ + + + + + + +<!doctype html>
+ + + + + + + +A tale of 2 kingdoms: Empire v. Shalom
Jesus often refers to the "law" and "prophets" which are the Torah (law) and Nevi'im ( prophets ). The Ketuvim (writings) was still being canonized in Jesus' day.
Christian canon has the OT in a different order than the Tanakh is... many reasons probably. One is genre and Western groupings of books, which makes sense. Another might be some anti-semitism. Tanakh ends with Chronicles however the Christian OT ends with Malacai (ends with a curse) which might be that way to setup Jesus in the NT?
1 Source is Samuel and Kings (In the Jewish Nevi'im). The other source is Chronicles (In the Jewish Ketuvim). These sources tell the same story but different versions of the same stories.
Scholars debate authorship and time of writing all the time - Marty generalizes this a bit, doesn't want to get into the weeds and instead stay at a level we can enter into more easily.
Samuel/Kings can be read from Northern Israel's perspective. It reads more like headlines of events rather than reflective writing of historical events.
Eastern history is not as concerned with getting every fact correct as we are in the West - rather the Easterner is more concerned with telling details in a way that spurs action and sends a message.
Chronicles was written more from the perspective of Judah. Chronicles is much less "agenda-driven headlines" and instead is much more a "documentary perspective" from Judah.
Both sources are talking about the same period of history - the stories of Saul, David, and Solomon down through the rest of the kings.
Modern Judaism is very different from Jesus' Judaism which was distinct from +David's Judaism, etc... We, as modern westerners, need to be aware of the +religious evolution and history of Judaism to properly understand the +Scriptures.
+Synagogue
started with groups of people at homes, not in a big building,
+after Exile, exploring a way to express their faith. Synagogue has 7 main
+elements. But note that all 7 are not found in every Synagogue building, but
+the 7 show up consistently
Basically a baptistry.
+Synagogue was never meant to replace the Temple
+Prior to AD 70, the doors to a Synagogue never faced Jerusalem in order to keep +in mind that Temple was distinct. However, after AD 70 doors to Synagogues were +built to face Jerusalem as a means of mourning the loss of the Temple
+Mikveh was a ritualistic cleansing (not a conversion like baptism) basically +every day, every time before you enter Synagogue.
+The pillared section of the Synagogue which held up the roof.
+read God's light by God's light
(sunlight)Dead center is the Bema seat. (Bay-mah or Bee-mah but this isn't the bima seat of judgement in the NT)
+Usually was just a slightly raised platform that someone would stand on as they read the text.
+The Bema seat starts to move closer to a side of the room, as a stage, as +Synagogues are influenced by Western culture. But in the Second Temple period +the seat was always at the center so that God's people gather around the +text.
+Modern day churches have us gather more as an audience to see a performer +rather than to gather around the text
+Everyone sat on the floor to hear God's word, but around the perimeter were +seats for those who were "seasoned", "wise"... really it's that they were older +and known as wise men in the community
+Where Torah was kept. Modern times there were more expensive and ornate art put +here - the Torah Closet was the place where the valuable things were kept
+This was introduced because prior to Exile the Jews might have been a people +who didn't know the rules... yes they didn't follow them, but there wasn't a +great system for making sure everyone knew them. So the Torah Closet existed to +keep God's law safe and accessible by all of God's people
+timestamp: 21 ish minutes - need to listen to Moses Seat again
+ +++For the first time in history, Greeks redefined worldfiew to be cenetered +around the individual. Prior to Hellenism, worldviews centered around +pleasing the gods
+
Alexander the Great
had his own gospel (εὐαγγέλιον - euangelion: predates biblical authors. "Good news to share" as an idea is not uniquely biblical)
He conqoured the world, not with a huge army but with 4 things:
+These 4 things pull on basically all people's values, Andrew the Great used them to control people...
+year | +event | +
---|---|
586 BC | +Babylonian captivity of Judah | +
538 BC | +Return to Israel (Decree of Cyrus) | +
332 BC | +Alexander the Great conquers Palestine | +
330–198 BC | +Rule of Hellenistic Ptolemies over Jews | +
198–167 BC | +Oppression under Hellenistic Seleucids | +
167 BC | +Maccabean revolt | +
167–63 BC | +Hasmonean (Maccabean) kingdom | +
63 BC | +Roman conquest of Judea | +
37 BC | +Reign of Herod begins | +
c. 6 BC | +Birth of Jesus | +
4 BC | +Herod’s death | +
4 BC–AD 6 | +Rule of Archelaus | +
4 BC–AD 39 | +Rule of Antipas | +
c. AD 27–30 | +Jesus’s public ministry | +
c. AD 30 | +Crucifixion of Jesus | +
AD 66–73 | +First Jewish revolt against Rome | +
AD 70 | +Destruction of Jerusalem/Temple | +
AD 73 | +Masada falls | +
AD 131–135 | +Bar Kochba Revolt (Second Jewish revolt) | +
4 rulers take over the Greek kingdom
+Leadership style - very Hellenistic
+Some Jews dove in, others remained faithful to Judaism... Psolemy made it just simply ahrd to not be Greek
+Selucis sacrifices a pig on the altar in Judea - ruthless take over of Jewish +land which leads to the Maccabean revolt (Hanukkah)
+Jews wins the Maccabean revolts, story of Hanukkah arises
+Maccabean's are people of the text and see that Yahweh wanted priests to rule, +not kings. So they hand the kingdom over to the Hasmoneans (priests), and their +Yahweh-centric rule eventually turns back to Hellenism
+Josephus (perhaps a little hyperbolically) said at this time there weren't enough priests to run Sabbath services cause they were all at the naked mud wrestling tournaments
+Maccabeans who leave the Hasmonean group, go north, and build a fundamentalist Jewish culture in Galilee which is where Jesus grew up and did his ministry
+They split into 2 groups - Zealots who use the sword, Pharisees who obedience to the text
+Jews (Saducees) persue Herod the Great in order to work things in light of Roman conquest, to remain good for the Jews
+Herod and Ceasar end up having a tight political relationship
+Herod split his kingdom to his sons after his death
+Sometime in this period, Jesus was born
+Jesus' public ministry is during this time
+Jews eventually revolt against Rome which leads to destruction of Jerusalem and the Temple
+ +>Often we in the modern time totally conflate Sadducees and Pharisees but they +>are as Republicans and Democrats today... very much not the same
+Back in the Davidic kingdom they are the group that sought to restore the
+priesthood by way of lineage. A goal was figuring out who the High Priest was.
+Lots are cast and Zaddok is chosen at some point - his line becomes the
+Jesus-era Saducees. They are the zaddokim
(Hebrew pronounciation) which when
+somwhat anglosized becomes sadducees
.
During Seleucids destruction of the Temple the Maccabeans revolt and expel +Selecuis and Ptolemies. The Hasmonean kingdom follows this, which are priests +that the Maccabeans turned the kingdom over to in an effort to be 'people of +the text'
+Hasmoneans are 7 famlies that have descended from Zaddok. Over the course of
+2-3 decades they become entirely Hellenistic. These ones are known in the
+Gospels as the Chief Priests
which is a different group than teachers of the Law
++The Chief Priests are a corrupt religious Mafia
+
Originally "Saducee" referred to direct descendents of Zaddok, which are a
+subset of Levitical descendents. Come Jesus-time Saduccee
becomes anyone who
+agrees with the priestly system... Not all priests were Saducees (See Zachariah
righteous priest
which didn't exist in
+their day - he was not a Saducee, he was faithful to Torah not Hellenism)Herod essentially controlled the world's wealth due to his own position as king +(of where?). Hasmonean's persued Herod and asked him to marry a Hasmonean +daughter in order to be called Jewish. Hasmoneans did this as they saw their +time coming to an end with the rising power of Rome. Herod saw the opportunity, +took it, and then he extends an olive branch to Caesar - and Caesar accepts the +partnership which turns Herod into basically a puppet king of Judea
+Herod then begins to auction off the High Priesthood - furthering priestly +corruption. Annas (Caiphas is Annas' son) is the one who buys the priesthood - +and the priesthood stays with this family until the destruction of Jerusalem in +AD 70.
+year | +thing | +
---|---|
586 BC | +Babylonian captivity of Judah | +
538 BC | +Return to Israel (Decree of Cyrus) | +
332 BC | +Alexander the Great conquers Palestine | +
330–198 BC | +Rule of Hellenistic Ptolemies over Jews | +
198–167 BC | +Oppression under Hellenistic Seleucids | +
167 BC | +Maccabean revolt | +
167–63 BC | +Hasmonean (Maccabean) kingdom | +
63 BC | +Roman conquest of Judea | +
37 BC | +Reign of Herod begins | +
c. 6 BC | +Birth of Jesus | +
4 BC | +Herod’s death | +
Herodians show up twice in the Gospels, Josephus talks about them a bit as +well. There is a lot of hsitorical debate that surrounds the Herodians.
+++Like Republicans and Democracts meant one thing in American history, but +those positions and words mean something different today - the same is true +in history, and with Herodians.
+
They were believed to be the political party, however formal, to be alligned with Kind Herod.
+We are also, presently, very hellenistic and even herodian. We are into the +luxury, we like convenience, we have entertainment/theaters. There's nothing +wrong with luxury, entertainment, plumbing, wealth, etc... The Saducees misused +Hellenism to their own detrement - they turned amoral Hellenism into a +worldview that pushed Yahweh out of the center and put human and self into the +center of the worldview
+++Herodians toed the line between reluctantly becoming hellenistic and +corrupting their worship with hellenism
+
!!! warning +I am (hopefully reluctantly) hellenistic as well...
+Embracing hellenism is not black and white, it is amoral... To spend money on +life, enjoy entertainment, decorate our homes, etc... can we appreciate +luxuries without compromising on Yahweh worship?
+timestamp: 21:45
+ +During the "silent years" Hellenism was on the rise, even among several Jewish circles.
+Another Jewish group (like Pharisees, Herodians, etc.) with a lot of debate +surrounding them. They were largely men, maybe a few women (which is +confusing), that were largely driven by priests. They claim God has abandoned +the system the corrupt Pharisees had come to adopt and so they went out into +the desert (very sepratist) and basically just prepared for the end times. They +condemned the Temple system - because of the corruption - however some Essenes +continued to serve in the Temple because they felt they couldn't abandon God's +calling on their lives
+!!! scripture
+16 Thus says the Lord:
+ “Stand by the roads, and look,
+and ask for the ancient paths,
+ where the good way is; and walk in it,
+and find rest for your souls.
+ But they said, ‘We will not walk in it.’
+
+The Holy Bible: English Standard Version (Je 6:16). (2016). Crossway Bibles.
+
+Essenes are credeited with writing the DSS.
+These served to validate basically all of what we have in our modern translated Bibles
+Can only come from a spring or rain. Living water is what must be used to +fill the baptistrys that the Essenes used. So they would dig canals from wadis +(pools of water in the desert) to fill their mikvahs (baptistrys).
+Another passage Essenes hold to is Isaiah 40:
+!!! scripture
+40 Comfort, comfort my people, says your God.
+ 2 Speak tenderly to Jerusalem,
+and cry to her
+ that her warfare is ended,
+that her iniquity is pardoned,
+ that she has received from the Lord’s hand
+double for all her sins.
+ 3 A voice cries:
+ “In the wilderness prepare the way of the Lord;
+make straight in the desert a highway for our God.
+ 4 Every valley shall be lifted up,
+and every mountain and hill be made low;
+ the uneven ground shall become level,
+and the rough places a plain.
+ 5 And the glory of the Lord shall be revealed,
+and all flesh shall see it together,
+for the mouth of the Lord has spoken.”
+
+The Holy Bible: English Standard Version (Is 40:1–5). (2016). Crossway Bibles.
+
+!!! note John the Baptist
+Likely that Zacharia had connections to Essenes movement, and that John was
+dedicated to the LORD via being raised in an Essene community. The only
+non-Essene thing he really did was to _go out_ and baptize people whereas
+Essene-like action is to wait for other to come to them
+
+Unlike Herodians who went out and engaged the world (not that everything they +did was good), this is in stark contrast to the Essenes community which is that +they are out in the desert, away from everyone, no "crossroads of the earth" +idea, and did not go out into the world - one of the negatives
+ +I write about things I find interesting in tech and theology
+ +God creates Eden in which he places humans to be his royal image - priests. God +sets humans up to receive his blessing but humans choose their own way. The +promise is for a priest and a sacrifice to come in Jesus.
+God chooses Abraham and Sarah as the first royal priesthood as they are chosen +by God to bless all the nations.
+A priestly king of Salem. Melchizedek recognizes Yahweh as the God of gods - +Abraham tithes to him and that's about the end of the story
+Salem is ancient short name for Jerusalem. +Abraham's tithe to Melchizedek is just like the Israelite call to tithe to the +Levites (priests) to support them.
+Abraham and Sarah are promised their own children but they take amtters into +their own hands by scheming with Hagar. Eventually Sarah is given her own son, +Issac, who God then calls for his life as a test of Abraham - it represents God +challenging Abraham to trust him with his own promise, and to not go his own +way with Sarah
+DUring the Isaac sacrifice narrative a ram is given in place and Abraham names the place "God will provide".
+The story of God's call to sacrifice Isaac is much like the story of Abraham +meeting Melchizedek. In the Melchizedek story Abraham meets a priest on a high +place and gives him an offering. In the Isaac story Abraham acts as the priest +and a ram is given to him by the LORD that covers the sins of Abraham's family.
+!!! note "Atonement and Covering"
+Covering the sin in this case looks much more like redemption and resolve
+rather than payment for gult, similar to a small-scale apology can cover a
+grievance even though no payment is made to make anything 'right', the
+'covering' is simply a sign of forgiveness
+
+!!! note "1"
+Shalem, or Salem, is later known as Jerusalem. Moriah, a mountainous region in
+Jerusalem, is later called the “mount of the LORD” (Genesis 22:14) and the
+“temple mount” (2 Chronicles 3:1). With all of this in mind, compare Genesis
+14:17-20 with Genesis 22:1-14 . How do you see God providing for Abraham in
+these similar settings?
+
+!!! scripture "Genesis 22:14"
+14Abraham called the name of that place The Lord Will Provide, as it is
+said to this day, “In the mount of the Lord it will be provided.”
+
+!!! scripture "2 Chronicles 3:1"
+The Temple Construction in Jerusalem
+
+1Then Solomon began to build the house of the Lord in Jerusalem on Mount
+Moriah, where the Lord had appeared to his father David, at the place that
+David had prepared on the threshing floor of Ornan the Jebusite.
+
+!!! scripture "Genesis 14:17-20"
+God’s Promise to Abram
+
+17Then after his return from the defeat of Chedorlaomer and the kings who
+were with him, the king of Sodom went out to meet him at the valley of
+Shaveh (that is, the King’s Valley). 18And Melchizedek king of Salem
+brought out bread and wine; now he was a priest of God Most High. 19He
+blessed him and said,
+
+“Blessed be Abram of God Most High,
+
+Possessor of heaven and earth;
+
+20And blessed be God Most High,
+
+Who has delivered your enemies into your hand.”
+
+He gave him a tenth of all.
+
+!!! scripture "Genesis 22:1-14"
+The Offering of Isaac
+
+1Now it came about after these things, that God tested Abraham, and said to
+him, “Abraham!” And he said, “Here I am.” 2He said, “Take now your son,
+your only son, whom you love, Isaac, and go to the land of Moriah, and
+offer him there as a burnt offering on one of the mountains of which I will
+tell you.” 3So Abraham rose early in the morning and saddled his donkey,
+and took two of his young men with him and Isaac his son; and he split wood
+for the burnt offering, and arose and went to the place of which God had
+told him. 4On the third day Abraham raised his eyes and saw the place from
+a distance. 5Abraham said to his young men, “Stay here with the donkey, and
+I and the lad will go over there; and we will worship and return to you.”
+6Abraham took the wood of the burnt offering and laid it on Isaac his son,
+and he took in his hand the fire and the knife. So the two of them walked
+on together. 7Isaac spoke to Abraham his father and said, “My father!” And
+he said, “Here I am, my son.” And he said, “Behold, the fire and the wood,
+but where is the lamb for the burnt offering?” 8Abraham said, “God will
+provide for Himself the lamb for the burnt offering, my son.” So the two of
+them walked on together.
+
+9Then they came to the place of which God had told
+him; and Abraham built the altar there and arranged the wood, and bound his
+son Isaac and laid him on the altar, on top of the wood. 10Abraham
+stretched out his hand and took the knife to slay his son. 11But the angel
+of the Lord called to him from heaven and said, “Abraham, Abraham!” And he
+said, “Here I am.” 12He said, “Do not stretch out your hand against the
+lad, and do nothing to him; for now I know that you fear God, since you
+have not withheld your son, your only son, from Me.” 13Then Abraham raised
+his eyes and looked, and behold, behind him a ram caught in the thicket by
+his horns; and Abraham went and took the ram and offered him up for a burnt
+offering in the place of his son. 14Abraham called the name of that place
+The Lord Will Provide, as it is said to this day, “In the mount of the Lord
+it will be provided.”
+
+!!! success ""
+5Abraham said to his young men, “Stay here with the donkey, and I and the
+lad will go over there; and we will worship and return to you.”
+
+Genesis 14 | +Genesis 22 | +
---|---|
Melchizedek provides bread and wine | +Yahweh provides the ram | +
Yahweh gave Abram victory over Chedorlaomer | +Yahweh gave Abraham Isaac's safety | +
!!! note "3"
+As you review Hebrews 7 , notice how the author assures their audience that
+Jesus is better than any other priest. What are some of the reasons the
+author provides? How is this good news for everyone?
+
+!!! scripture "Hebrews 7"
+Melchizedek’s Priesthood Like Christ’s
+
+1For this Melchizedek, king of Salem, priest of the Most High God, who met Abraham as he was returning from the slaughter of the kings and blessed him, 2to whom also Abraham apportioned a tenth part of all the spoils, was first of all, by the translation of his name, king of righteousness, and then also king of Salem, which is king of peace. 3Without father, without mother, without genealogy, having neither beginning of days nor end of life, but made like the Son of God, he remains a priest perpetually.
+
+4Now observe how great this man was to whom Abraham, the patriarch, gave a tenth of the choicest spoils. 5And those indeed of the sons of Levi who receive the priest’s office have commandment in the Law to collect a tenth from the people, that is, from their brethren, although these are descended from Abraham. 6But the one whose genealogy is not traced from them collected a tenth from Abraham and blessed the one who had the promises. 7But without any dispute the lesser is blessed by the greater. 8In this case mortal men receive tithes, but in that case one receives them, of whom it is witnessed that he lives on. 9And, so to speak, through Abraham even Levi, who received tithes, paid tithes, 10for he was still in the loins of his father when Melchizedek met him.
+
+11Now if perfection was through the Levitical priesthood (for on the basis of it the people received the Law), what further need was there for another priest to arise according to the order of Melchizedek, and not be designated according to the order of Aaron? 12For when the priesthood is changed, of necessity there takes place a change of law also. 13For the one concerning whom these things are spoken belongs to another tribe, from which no one has officiated at the altar. 14For it is evident that our Lord was descended from Judah, a tribe with reference to which Moses spoke nothing concerning priests. 15And this is clearer still, if another priest arises according to the likeness of Melchizedek, 16who has become such not on the basis of a law of physical requirement, but according to the power of an indestructible life. 17For it is attested of Him,
+
+“You are a priest forever
+
+According to the order of Melchizedek.”
+
+18For, on the one hand, there is a setting aside of a former commandment because of its weakness and uselessness 19(for the Law made nothing perfect), and on the other hand there is a bringing in of a better hope, through which we draw near to God. 20And inasmuch as it was not without an oath 21(for they indeed became priests without an oath, but He with an oath through the One who said to Him,
+
+“The Lord has sworn
+
+And will not change His mind,
+
+‘You are a priest forever’ ”);
+
+22so much the more also Jesus has become the guarantee of a better covenant.
+
+23The former priests, on the one hand, existed in greater numbers because they were prevented by death from continuing, 24but Jesus, on the other hand, because He continues forever, holds His priesthood permanently. 25Therefore He is able also to save forever those who draw near to God through Him, since He always lives to make intercession for them.
+
+26For it was fitting for us to have such a high priest, holy, innocent, undefiled, separated from sinners and exalted above the heavens; 27who does not need daily, like those high priests, to offer up sacrifices, first for His own sins and then for the sins of the people, because this He did once for all when He offered up Himself. 28For the Law appoints men as high priests who are weak, but the word of the oath, which came after the Law, appoints a Son, made perfect forever.
+
+I don't do a lot of OOP currently, but I have been on a few heavy OOP projects and this ABCMeta
and abstractmethod
from abc
would've been super nice to know about!
If you are creating a library with classes that you expect your users to extend, but you want to ensure that any extension has explicit methods defined then this is for you!.
+from abc import ABCMeta, abstractmethod
+class Family(metaclass=ABCMeta):
+ @abstractmethod
+ def get_dad(self):
+ """Any extension of the Family class must implement a `get_dad` method"""
+
+class MyFamily(Family):
+ pass
+
+
+If I try to instantiate MyFamily
I will not be allowed:
+❯ my_fam = MyFamily()
+╭─────────────────────────────── Traceback (most recent call last) ────────────────────────────────╮
+│ <ipython-input-8-ecb8e21ce815>:1 in <module> │
+╰──────────────────────────────────────────────────────────────────────────────────────────────────╯
+TypeError: Can't instantiate abstract class MyFamily with abstract methods get_dad
+
+
+
+In order for me to extend Family
I have to implement the method get_dad
class MyFamily(Family):
+ def get_dad(self):
+ return "Me"
+
+Now everything works as expected and I can sleep well knowing no one can extend my base class without creating methods I know they need.
+
+my_fam = MyFamily()
+
+my_fam.get_dad()
+'Me'
+
+
+
+I run pi-hole at home for ad blocking and some internal DNS/DHCP handling.
+pi hole posts on the way
+One thing I've never put too much thought in is asking "how well am I doing at blocking?" +There's lots of ways to measure that depending on what you care about but I just learned of adblock tester. +It's awesome and gave me a quick glimpse into how my pi-hole is performing on keeping my webpages clean and my DNS history private!
+Credits to d3ward for the awesome tool!
+ +Mike Driscoll recently tweeted about making +colored out with pandas DataFrames and I just had to try it for myself
+First though... why? +My biggest use case is a monitoring pipeline of mine... The details aside, the +output of my pipeline is a dataframe where each row has information about a +failed pipeline that I need to go look into. I dump that result to a simle html +file that's hosted on an internal site and the file is updated every couple of +hours. Adding some colored indicators automatically to the rows to help me +assess severity of each record would be a handy way to quickly get an +understanding the state of our pipelines.
+The docs for the applymap
method state simply:
Apply a CSS-styling function elementwise.
+
+Updates the HTML representation with the result.
+
+
+So we can write a function that returns color: {color}
based on the dataframe
+values and when we drop that dataframe to html we'll have some simple css
+styling applied automagically!
By default the function will be applied to all columns of the dataframe, but
+that's not useful if the columns are different types which is usually the case.
+Luckily there is a subset
keyword to only apply to the columns you need!
Consider my example
+sandbox main via 3.8.11(sandbox) ipython
+❯ df = pd.read_csv("cars.csv")
+
+sandbox main via 3.8.11(sandbox) ipython
+❯ def mpg_color(val: float):
+...: color = "red" if val < 21 else "green"
+...: return f"color: {color}"
+
+sandbox main via 3.8.11(sandbox) ipython
+❯ df.style.applymap(mpg_color, subset="mpg").to_html("color.html")
+
+I want to quickly see if the mpg
is any good for the cars in the cars dataset
+and I'll define "good" as better than 21 mpg (not great I know but just for the
+sake of discussion...)
The function returns an appropriate css string and after I style.applymap
on just the mpg
column we get this!
+ | Unnamed: 0 | +mpg | +cyl | +disp | +hp | +drat | +wt | +qsec | +vs | +am | +gear | +carb | +
---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | +Mazda RX4 | +21.000000 | +6 | +160.000000 | +110 | +3.900000 | +2.620000 | +16.460000 | +0 | +1 | +4 | +4 | +
1 | +Mazda RX4 Wag | +21.000000 | +6 | +160.000000 | +110 | +3.900000 | +2.875000 | +17.020000 | +0 | +1 | +4 | +4 | +
2 | +Datsun 710 | +22.800000 | +4 | +108.000000 | +93 | +3.850000 | +2.320000 | +18.610000 | +1 | +1 | +4 | +1 | +
3 | +Hornet 4 Drive | +21.400000 | +6 | +258.000000 | +110 | +3.080000 | +3.215000 | +19.440000 | +1 | +0 | +3 | +1 | +
4 | +Hornet Sportabout | +18.700000 | +8 | +360.000000 | +175 | +3.150000 | +3.440000 | +17.020000 | +0 | +0 | +3 | +2 | +
I ran out of space on the SSD in my server when doing some file transfers but only 100GB was used of a 256 GB SSD?
+When installing Ubuntu live server the default option for how to partition the +disk (in my experience) has been to setup an LVM group that defaults to less +than the available space. Most recently I put Ubuntu server on a 256 GB SSD but +the main partition was formatted as an LVM group with 100GB of storage... I +didn't think anything of this even though I'm mostly used to EXT4.
+I think the reason for LVMs is performance, but in hindsight, I don't really +care much about the performance differences, I really just want all my storage +that's fast enough
+A moment of googling brought me to Ubuntu's wiki and I +learned that I can expand my LVM to the space I need...
+sudo lvdisplay
and sudo pvdisplay
show detailed views of the logical volumes and physical volumes respectively.
Take a look at those and find the volume you need to extend. For me I found this:
+ --- Logical volume ---
+ LV Path /dev/ubuntu-vg/ubuntu-lv
+ LV Name ubuntu-lv
+ VG Name ubuntu-vg
+ LV Write Access read/write
+ LV Status available
+ ...
+
+There's more that you'll see but this is what's relevant - I need to extend the
+ubuntu-lv
logical volume in the ubuntu-vg
volume group.
sudo lvextend -L +50g ubuntu-vg/ubuntu-lv
gives me 50 more GB of storage which should be enough for at least tonight 🤓
in /lib/systemd/system/docker.service there is an ExecStart command that got placed there when I setup Docker with Ansible - it threw the -H flag which told the daemon what hosts to setup. But I added the "hosts" key in my daemon.json and it broke - so removing the -H flag from the systemd unit fixed it
+ +rtsp://<ip address>
<- this was the ticket for meLuke 2:14 (ESV): 14 “Glory to God in the highest, and on earth peace among those with whom he is pleased!”
+There is a word we probably know - Shalom. It's the Hebrew word we translate often as "peace". But when I hear "peace" I often think about being calm - and that oversimplifies Shalom... I think a more appropriate understanding is "things are as they are supposed to be".
+In the Garden, we see Shalom - the Lord partnering with humanity to steward the earth, to make things as they were supposed to be...
+You all know we messed that up, Shalom was broken and humanity was exiled.
+But we have a Great Healer.
+Jesus is Lord of all, King of Heaven and Earth, Ruler of your lives and mine, and he is the Prince of Peace
+Things in our lives are probably not often as they are supposed to be... We get sick, worry about bills, experience tragedy, and weather the storms of life. But there is hope - confident expectation - that peace already has been, and will continue to be, restored to those whom Jesus chooses, the ones with whom he is pleased.
+John records a lot before telling us about the cross, and I won't recount that in this short edification. But he recalls a hopeful word from the Lord -
+John 16:33 (LEB): 33 I [Jesus] have said these things to you so that in me you may have peace. In the world you have affliction, but have courage! I have conquered the world.”
+This season, and this week of Advent, I pray God presses the reality, and the hope for, peace, the expectation of Shalom, deeper into my heart. I pray the Spirit guides us all to bring the will of God to earth as it is in Heaven
+Finally I pray we may all be given, and accept, the conviction of Paul -
+Romans 8:18 For I consider that the sufferings of this present time are not worthy to be compared with the glory that is to be revealed to us.” Our present trials are not on an equal scale with the glory of heaven
+May the rest, the peace, the Shalom that Jesus gives to his followers be with you all. Amen.
+ +I often struggle to remember the correct way to do and
type comparisons when working in pandas.
I remember learning long long ago that and
and &
are different, the former being lazy boolean evaluation whereas the latter is a bitwise operation.
I learned a lot from this SO post
+Python list
objects can contain unlike elements - ie. [True, 'foo', 1, '1', [1,2,3]]
is a valid list with booleans, strings, integers, and another list.
+Because of this, we can't use &
to compare two lists since they can't be combined in a consistent and meaningful way.
However we can use and
since it doesn't do bitwise operations, it just evaluates the boolean value of the list (basically if it's non-empty then bool(my_list)
evaluates to True
)
Here's an example:
+sandbox NO VCS via 3.8.11(sandbox) ipython
+❯ my_list = [1, "2", "foo", [True], False]
+
+sandbox NO VCS via 3.8.11(sandbox) ipython
+❯ bool(my_list)
+True
+
+If we compare my_list
with another_list
using and
then the comparision will go:
if bool(my_list):
+ if bool(another_list):
+ <operation>
+ else:
+ break
+
+Let's see another example:
+sandbox NO VCS via 3.8.11(sandbox) ipython
+❯ another_list = [False, False]
+
+sandbox NO VCS via 3.8.11(sandbox) ipython
+❯ my_list and another_list
+[False, False]
+
+bool(my_list)
evaluated to True
, and bool(another_list)
also evaluated to True
even though it's full of False
values because the object is non-empty.
sandbox NO VCS via 3.8.11(sandbox) ipython
+❯ if my_list and another_list:
+...: print("foo")
+foo
+
+So using and
in this case results in a True
conditional, so the print
statement is executed.
Feels kind of counter-intuitive at first glance, to me anyways...
+However, we can't use &
because there isn't a meaningful to do bitwise operations over these two lists:
sandbox NO VCS via 3.8.11(sandbox) ipython
+❯ my_list & another_list
+╭─────────────────────────────── Traceback (most recent call last) ────────────────────────────────╮
+│ <ipython-input-19-a2a16cebb3da>:1 in <cell line: 1> │
+╰──────────────────────────────────────────────────────────────────────────────────────────────────╯
+TypeError: unsupported operand type(s) for &: 'list' and 'list'
+
+
+numpy
arrays are special and they have a lot of fancy vectorization utilities built-in which make them great and fast for mathematical operations but now our logical comparisons need to be handled with a different kind of care.
First thing though - without some trickery they do not hold mixed data types like a list
does (necessary, I think, for the vectorized optimization that numpy is built on top of)
With that out of the way here's the main thing for this post, we can't just evaluate the bool
of an array - numpy says no no no.
+sandbox NO VCS via 3.8.11(sandbox) ipython
+❯ arr = np.array(["1", 2, True, False])
+
+sandbox NO VCS via 3.8.11(sandbox) ipython
+❯ arr
+array(['1', '2', 'True', 'False'], dtype='<U21')
+
+sandbox NO VCS via 3.8.11(sandbox) ipython
+❯ bool(arr)
+╭─────────────────────────────── Traceback (most recent call last) ────────────────────────────────╮
+│ <ipython-input-25-4e8c5dd85b93>:1 in <cell line: 1> │
+╰──────────────────────────────────────────────────────────────────────────────────────────────────╯
+ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
+
+
+++This means that using
+and
withnumpy
arrays doesn't really make sense because we probably care about the truth value of each element (bitwise), not the truth value of the array.
Notice that when I print arr
all the elements are a string - and the dtype
is <U21
for all elements.
This is not how I instantiated the array so be aware of that behavior with numpy.
++++
<U21
is a dtype expressing the values are 'Little Endian', Unicode, 12 characters. See here for docs for docs
So for logical comparisions we should look at the error message then...
+Our handy error message says to try any
or all
Because the datatypes in this example are basically strings, using arr.any()
will result in an error that I do not fully understand, but any(arr)
and all(arr)
work...
sandbox NO VCS via 3.8.11(sandbox) ipython
+❯ if arr.any():
+...: print("foo")
+╭─────────────────────────────── Traceback (most recent call last) ────────────────────────────────╮
+│ <ipython-input-48-25ecac52db96>:1 in <cell line: 1> │
+│ /home/u_paynen3/personal/sandbox/.venv/sandbox/lib/python3.8/site-packages/numpy/core/_methods.p │
+│ y:57 in _any │
+│ │
+│ 54 def _any(a, axis=None, dtype=None, out=None, keepdims=False, *, where=True): │
+│ 55 │ # Parsing keyword arguments is currently fairly slow, so avoid it for now │
+│ 56 │ if where is True: │
+│ ❱ 57 │ │ return umr_any(a, axis, dtype, out, keepdims) │
+│ 58 │ return umr_any(a, axis, dtype, out, keepdims, where=where) │
+│ 59 │
+│ 60 def _all(a, axis=None, dtype=None, out=None, keepdims=False, *, where=True): │
+╰──────────────────────────────────────────────────────────────────────────────────────────────────╯
+UFuncTypeError: ufunc 'logical_or' did not contain a loop with signature matching types (None, <class 'numpy.dtype[str_]'>) -> None
+
+sandbox NO VCS via 3.8.11(sandbox) ipython
+
+❯ if all(arr):
+...: print("foo")
+foo
+
+sandbox NO VCS via 3.8.11(sandbox) ipython
+❯ if any(arr):
+...: print("foo")
+foo
+
+Let's change the example to just use integers and see what happens:
+sandbox NO VCS via 3.8.11(sandbox) ipython
+❯ arr2 = np.array([1, True, False])
+
+sandbox NO VCS via 3.8.11(sandbox) ipython
+❯ arr2
+array([1, 1, 0])
+
+sandbox NO VCS via 3.8.11(sandbox) ipython
+❯ if arr2.any():
+...: print("foo")
+foo
+
+sandbox NO VCS via 3.8.11(sandbox) ipython
+❯ if arr2.all():
+...: print("foo")
+
+
+Ah, now some sanity...
+First, the booleans are stored as integers, which based on this discussion makes sense.
+Next we check if any
values (this is a bitwise operation) are True
, which we see they are so the conditional evaluates to True
.
+Howver, if we check that all
values are True
we see they aren't, the last value is False
or 0
so the conditional fails.
This is a different way to evaluate logical conditions than with lists and it's because of the special nature of numpy arrays that allows them to be compared bitwise but on the flip side, there isn't a meaningful way to evaluate the truth value
of an array.
Now for pandas
, which under the hood is a lot of numpy
but not fully.
+pandas.Series
objects can hold mixed data types like lists, however to logically evaluate truth values we have to treat them like numpy arrays.
+sandbox NO VCS via 3.8.11(sandbox) ipython
+❯ s = pd.Series([1, "foo", True, False])
+
+sandbox NO VCS via 3.8.11(sandbox) ipython
+❯ s
+
+0 1
+1 foo
+2 True
+3 False
+dtype: object
+
+sandbox NO VCS via 3.8.11(sandbox) ipython
+❯ bool(s)
+╭─────────────────────────────── Traceback (most recent call last) ────────────────────────────────╮
+│ <ipython-input-60-68e48e81da14>:1 in <cell line: 1> │
+│ /home/u_paynen3/personal/sandbox/.venv/sandbox/lib/python3.8/site-packages/pandas/core/generic.p │
+│ y:1527 in __nonzero__ │
+│ │
+│ 1524 │ │
+│ 1525 │ @final │
+│ 1526 │ def __nonzero__(self): │
+│ ❱ 1527 │ │ raise ValueError( │
+│ 1528 │ │ │ f"The truth value of a {type(self).__name__} is ambiguous. " │
+│ 1529 │ │ │ "Use a.empty, a.bool(), a.item(), a.any() or a.all()." │
+│ 1530 │ │ ) │
+╰──────────────────────────────────────────────────────────────────────────────────────────────────╯
+ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().
+
+
+Just like with numpy, we can't evaluate the truth value of the series in a meaningful way, but bitwise operations make perfect sense...
+
+❯ if s.any():
+...: print("foo")
+foo
+
+sandbox NO VCS via 3.8.11(sandbox) ipython
+❯ if s.all():
+...: print("foo")
+
+
+I thought this was about and
and &
...
Right, so recall that and
is a lazy boolean evaluation (ie. it evaluates the 'truth value' an object) whereas &
does bitwise comparison.
What we see then with pandas
and numpy
is that if we want to do logical comparisons, we need to do them bitwise, ie. use &
.
Keep in mind though that the data types make a big deal - we can't use &
with strings because the bitwise operation isn't supported, for strings we need to use the boolean evaluation.
My main use case for this is finding elements in a dataframe/series based on 2 or more columns aligning row values...
+Say I have a dataframe like this:
+
+sandbox NO VCS via 3.8.11(sandbox) ipython
+❯ df
+
+ s s2 s3
+0 1 0 foo
+1 1 a bar
+2 1 b baz
+3 2 a fee
+4 2 0 fi
+
+Example use case is I want to get the values in s3
where s
is 1 and s2
is 'a'. ie. I'm just after bar
for now...
Up until now I've always just tried df.s3[(df.s == 1) and (df.s2 == "a")]
the first time and every single time I've gotten this error that I just haven't ever fully understood:
ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().
+
+But after this deep dive I think I've grasped that and
doesn't actually do what I want here, and in order to do the bitwise comparision I need to use &
sandbox NO VCS via 3.8.11(sandbox) ipython
+❯ df.s3[(df.s == 1) & (df.s2 == "a")]
+
+1 bar
+Name: s3, dtype: object
+
+Hopefully this set of ramblings brings some clarity to and
and &
and you can Google one less error in the future in your logical comparison workflows 😄
❯ find . -name "requirements.in" -print0 | xargs -0 sh -c 'for arg in "$@"; do echo "awscli" >>"$arg"; done'
+ ++ + +Playing around with Modal Labs +One of the first things I tried was a regular cron job... +@stub.function( + schedule=modal.Period(minutes=59), secret=modal.Secret.from_name("my-dummy-secret") +) +def say_hi(): + now = time.ctime() + sec ... + read more → +
+ ++ + +ssh-copy-id -i my.key.pub <hostname probably from tailscale> +this makes sure I can run ansible from my desktop against VMs on my server +easily if they have tailscale for the hostname - otherwise use the IP + + + read more → +
+ ++ + +https://nicolasbouliane.com/blog/nextcloud-docker-upgrade-error + + + read more → +
+ ++ + +I have a bash script called syncoid-job which boils down to a barebones - +#!/bin/bash + +syncoid --no-sync-snap --sendoptions=w --no-privilege-elevation $SYNOIC_USER@$SERVER:tank/encrypted/nas tank/encrypted/nas + +I want to run this script hourly but a ... + read more → +
+ ++ + +in /lib/systemd/system/docker.service there is an ExecStart command that got placed there when I setup Docker with Ansible - it threw the -H flag which told the daemon what hosts to setup. But I added the "hosts" key in my daemon.json and ... + read more → +
+ ++ + +I regularly need to edit system config files - take /etc/sanoid/sanoid.conf as +an example... I'll want to play with something but if I don't start Neovim as +root then I get in trouble making edits I can't save! So +suda.vim gives me +:SudaWrite which ... + read more → +
+ ++ + +I'm playing with my ansible playbook in a remote tmux session, and I'm no wiz +so I don't know the ins and outs, but I can't scroll up to get any console log +output that's not already visible on my screen. So I'm starting to end my +commands with | l ... + read more → +
+ ++ + +AJAX wasn't cutting it, traditional crontab in containers doesn't make much +sense to me, webcron is recommended but I don't want to register with anything +outside my LAN... Turns out you can just spin up an identical container with a +different entry ... + read more → +
+ ++ + +Logging instead of printing +I am trying to adopt logger.debug instead of print but ran into a confusing +thing in ipython during Advent of Code... I riddled by script with +logger.debug (yes after setting logging.setLevel('DEBUG')) but in ipython +none ... + read more → +
+ ++ + +I wanted to break down some long lines in a Markdown table cell to make it look +nicer on my blog but \n didn't do anything for me... turns out is the +magic sauce + + + +Column 1 +Column 2 + + + + +Key +Doggo ipsum many pats. Borkdrive borking doggo doing me a ... + read more → +
+ ++ + +My moonlander is great, and I just recently added CAPS LOCK back to my keymapping but I've moved it... +At present it is where the ESC kep usually is however I'm trying to match my general moonlander usage with a keymap that fits on a planck. +Because ... + read more → +
+ ++ + +My current homelab setup is not great but it works... +Proxmox on PowerEdge R610 +I boot off an SD card and have 1 SSD and 5 HDDs configured as a JBOD array using a Dell H700 SAS controller. +I cannot boot from a disk using this controller and I can't ... + read more → +
+ ++ + +I often struggle to remember the correct way to do and type comparisons when working in pandas. +I remember learning long long ago that and and & are different, the former being lazy boolean evaluation whereas the latter is a bitwise operation. +I ... + read more → +
+ ++ + +I have a specific need for counting the number of lines in a file quickly. +At work we use S3 for data storage during our Kedro pipeline development, and in the development process we may end up orphaning several datasets. +In order to keep our worksp ... + read more → +
+ ++ + +I have a post on starship where I have some notes on how I use starship to make my zsh experience great with a sweet terminal prompt. +Now... I spend quite a bit of time in ipython every day and I got kind of sick of the vanilla experience and wanted ... + read more → +
+ ++ + +Did you know you can spell check in Vim?! + + + + Vim Spell check + + + Without... + Here is a missspelled word. + <h3>With!</h3> + <p>Here is a <u>missspelled</u> word.</p> + + + +What is this magi ... + read more → +
+ ++ + +polybar is an awesome and super customizable status bar for your desktop environment. +I use it with i3-gaps on Ubuntu for work and it makes my day just that much better to have a clean and elegant bar with the things in it that I care about. +The Git ... + read more → +
+ ++ + +I am working on a project to create a small system monitoring dashboard using the python psutil library. +The repo is here (if you want actual system monitoring please use netdata). +I'm using streamlit and plotly for the webserver, design, and plotti ... + read more → +
+ ++ + +Streamlit +I use streamlit for any EDA I ever have to do at work. +It's super easy to spin up a small dashboard to filter and view dataframes in, live, without the fallbacks of Jupyter notebooks (kernels dying, memory bloat, a billion "Untitled N ... + read more → +
+ ++ + +If you spend time in the terminal then you'll want it to look somewhat pleasing to the eye. +I used to ssh into servers with no customization, use vi to edit a file or two, then get back to my regularly scheduled programming in VS C**e... +One of the ... + read more → +
+ ++ + +Self-hosting 1 or several media servers is another common homelab use-case. +Getting content for your media servers is up to you, but I'll show a few ways here to get content somewhat easily! +YouTube Disclaimer at Bottom +you-get +you-get is a nice cli ... + read more → +
+ ++ + +EDA +I work with data a lot, but the nature of my job isn't to dive super deep into a small amount of datasets, +I'm often jumping between several projects every day and need to just get a super quick glance at some tables to get a high level view. +Wh ... + read more → +
+ ++ + +NAS +One of the most common use cases for self-hosting anything is a file share system. +I have been a fan of TrueNAS for a while. +I currently use TrueNAS Core at home, and plan to consider transitioning to TrueNAS Scale soon. +Blog post forthcoming on ... + read more → +
+ ++ + +I like to keep my workspace clean and one thing that I don't personally love looking at is the __pycache__ directory that pops up after running some code. +The *.pyc files that show up there are python bytecode and they are cached to make subsequent ... + read more → +
+ ++ + +Mike Driscoll has been posting some awesome posts about psutil lately. +I'm interested in making my own system monitoring dashboard now using this library. +I don't expect it to compete with Netdata or Glances but it'll just be for fun to see how Pyth ... + read more → +
+ ++ + +If you work with a template for several projects then you might sometimes need to do the same action across all repos. +A good example of this is updating a package in requirements.txt in every project, or refactoring a common module. +If you have sev ... + read more → +
+ ++ + +VPN +Virtual Private Networks are a big deal, and this shouldn't be considered anything even close to a guide on using them. +Here are just my notes and some setup for how I use wireguard at home. +Wireguard +Wireguard is an awesome peer-to-peer VPN tun ... + read more → +
+ ++ + +Git +Hopefully if you write code you are using git, if not go learn the basics of commit, pull, push, and pull request/merge request like... right now. +Assuming you are at least familiar with git then you probably work the same way I have since I've ... + read more → +
+ ++ + +ABCMeta +I don't do a lot of OOP currently, but I have been on a few heavy OOP projects and this ABCMeta and abstractmethod from abc would've been super nice to know about! +If you are creating a library with classes that you expect your users to exte ... + read more → +
+ ++ + +Being lazy +I almost exclusively use Python for my job and have been eye-balls deep in it for almost 5 years but I really lack in-depth knowledge of builtins. +I recently learned of an awesome builtin called calendar that has way more than I know abo ... + read more → +
+ ++ + +I am personally trying to use logger instead of print in all of my code, +however I learned from [@Python-Hub] that you can align printouts using print with f-strings!. +This little python script shows how options in the f-string can format the printo ... + read more → +
+ ++ + +I have often wanted to dive into memory usage for pandas DataFrames when it comes to cloud deployment. +If I have a python process running on a server at home I can use glances or a number of other tools to diagnose a memory issue... +However at work ... + read more → +
+ ++ + +I run pi-hole at home for ad blocking and some internal DNS/DHCP handling. +pi hole posts on the way +One thing I've never put too much thought in is asking "how well am I doing at blocking?" +There's lots of ways to measure that depending on ... + read more → +
+ ++ + +I host a lot of services in my homelab, but they're mostly dockerized applications so I have never had to care much about how content gets served up. +Today I had several little concepts click into place regarding webservers, and it was a similar exp ... + read more → +
+ ++ + +I wanted a quick way to generate an index.html for a directory of html files that grows by 1 or 2 files a week. +I don't know any html (the files are exports from my tiddlywiki)... +tree is just the answer. +Say I have a file structure like this: +./htm ... + read more → +
+ ++ + +Traefik +If you don't know about traefik and you need a reverse-proxy then you might want to check it out. +I used to use nginx for my reverse proxy but the config was over my head, and once it was working I was afraid to touch it. +Traefik brings a lo ... + read more → +
+ ++ + +On my team we often have to change data types of columns in a pandas.DataFrame for a variety of reasons. +The main one is it tends to be an artifact of EDA whereby a file is read in via pandas but the data types are somewhat wonky (ie. dates show up ... + read more → +
+ ++ + +Tiddly Wiki is a great note taking utility for organizing non-linear notes. +I used it to replace my OneNote workflow and my only complaint is I don't have an easy way to access and edit my tiddlers (posts) if I'm not at home. +The tiddlywiki is just ... + read more → +
+ ++ + +I ran into an issue where I had some copy-pasta markdown tables in a docstring but the generator I used to make the table gave me tabs instead of spaces in odd places which caused black to throw a fit. +Instead of manually changing all tabs to spaes, ... + read more → +
+ ++ + +Check out stow for a brief introduction to stow +What if I want to stow a package somewhere else? +Boom, that's where -t comes in... +Maybe I don't like having my dotfiles repo at $HOME and instead I want it in ~/git or ~/personal just to stay organize ... + read more → +
+ ++ + +After carefully staging only lines related to a specific change and comitting I suddenly realized I missed one... darn, what do I do? +Old me would have soft reset my branch to the previous commit and redone all my careful staging... what a PIA... +Ne ... + read more → +
+ ++ + +Stow is a great tool for managing dotfiles. My usage looks like cloning my dotfiles to my home directory, setting some environment variables via a script, then stowing relevant packages and boom my config is good to go... +cd ~ +git clone <my dotfi ... + read more → +
+ ++ + +Sometimes I need to manually set a static IP of a Linux machine. I generally run the latest version of Ubuntu server in my VMs at home. +In Ubuntu 20 I'm able to change up /etc/netplan/<something>.yml +network: + version: 2 + ethernets: + enp0 ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +Switching to Vim opened a whole new world to me for interacting with a computer +and for getting things done. Before I adopted Vim I used GUIs for everything +because I thought that's how it had to be done... Notes in OneNote, code using +a GUI editor, ... + read more → +
+ ++ + +mkdir s{1..10} will make directories s1, s2, ... s10 in one command! + + + read more → +
+ ++ + +Class link +Classroom notes (Must be on home network) +01 The Shape of the Hebrew Bible +Session 1: What on Earth is the Hebrew Bible? +This class is not so much a survey of the HB, it is Tim's attempt to distil the +most helpful things for understanding ... + read more → +
+ ++ + +/mysearch\c will match mysearch, MYSEARCH, mYSeArCh... + + + read more → +
+ ++ + +Link +Notes +!!! Exodusds 34:6 +Compassioante and gracious, slow to anger, overflowing with loyal love and faithfulness + +Faithfulness - Emet (can be translated 'Truth') +Related to "Amen" which is untranslated Hebrew expression meaning "t ... + read more → +
+ ++ + +zfs list has a flag -r, but if you use zfs driver for docker then you'll get +flooded with every docker volume in the world. zfs list -r -d N will limit the +dept of the print out, so zfs list -r -d 2 gives me tank, tank/encrypted, +tank/encrypted/dock ... + read more → +
+ ++ + +If you think glepnir/lspsaga.nvim config will work with tali5/lspsaga.nvim installed... you're in for a rude awakening. Double check your forks folks! + + + read more → +
+ ++ + +Link to study +Creation +Brougt to completion on the seventh day in Genesis 1. It is the only day that +does not end with 'there evening and there was morning, the Nth day' +Humans were meant to rest with God in his creation forever, but in their +reblli ... + read more → +
+ ++ + +I learned you can embed gifs and stuch in things other than GH personal pages! +So here I'll keep ones I like and might use later +via GIPHY + + + read more → +
+ ++ + +Bought some DDR4-3600 speed RAM but only seeing 2666? Load up the BIOS, find DRAM config or something similar, and make sure to load the XMP profile to get that advertised RAM speed! + + + read more → +
+ ++ + +!!! note "Babyblue v2" +Ryzen 5700x + 32 GB 3200 CL16 RAM + +<a href="https://www.passmark.com/baselines/V10/display.php?id=503041456656"><img src="https://www.passmark.com/baselines/V10/media/503041456656.png" al ... + read more → +
+ ++ + +ssh -v -i ~/.ssh/id_rsa nic@hogwarts +THen we can look at print outs +cat /var/log/auth.log also showed me that I had too wide permissions on files in ~/.ssh -> probably changed from an rsync job + + + read more → +
+ ++ + +link +Chara / Joy +There are several words for similar feelings - example like joy has several synonyms. +Sources +Genesis tells us creation and life bring joy +Psalm 104 - A good bottle of wine is God's gift to bring joy to people's hearts +P#lm 65 - Bea ... + read more → +
+ ++ + +Assuming you have a pool called tank... +And assuming you have an encrypted dataset (See Jim Saltar's short +intro) + +Create a group for permissions - in my case I have one called home +Then if there's anything in /tank/encrypted his it with chgrp -R ho ... + read more → +
+ ++ + +sudo dmidecode -s bios-version + + + read more → +
+ ++ + +link to study +Video +Priests +God creates Eden in which he places humans to be his royal image - priests. God +sets humans up to receive his blessing but humans choose their own way. The +promise is for a priest and a sacrifice to come in Jesus. +God cho ... + read more → +
+ ++ + +❯ find . -name "requirements.in" -print0 | xargs -0 sh -c 'for arg in "$@"; do echo "awscli" >>"$arg"; done' + + + read more → +
+ ++ + +Video +Eden +Biblical story begins in a garden, which is presented as a type of Temple. The +top (center) is the Tree of Life, which represents God's life and creative +power. Humans were supposed to eat from the Tree of Life but there's +another tree, t ... + read more → +
+ ++ + +study link +Peace +!!! note "" +generally means absnese of war + +In Hebrew the word is Shalom (Greek: Eirene). Basic biblical meeting of +Shalom is "complete" or "whole". ie. a stone with no cracks, or stone wall with +nogaps ... + read more → +
+ ++ + +I use Tmux and Vim for most of my workflow, but I end up with a lot of dangling +tmux sessions that dont' really need to persist... but killing them one at a +time is a pain so I wrote a little script-kitty nonsense to pipe multiple +choices from fzf i ... + read more → +
+ ++ + +link to presentation +Hellenism +During the "silent years" Hellenism was on the rise, even among several Jewish circles. +Essenes +Another Jewish group (like Pharisees, Herodians, etc.) with a lot of debate +surrounding them. They were largely ... + read more → +
+ ++ + +TODO: change title - add --listen or --host or something as 0.0.0.0... that way it listens not on localhost or 127.0.0.1, but on all addresses! + + + read more → +
+ ++ + +Herodians show up twice in the Gospels, Josephus talks about them a bit as +well. There is a lot of hsitorical debate that surrounds the Herodians. + +Like Republicans and Democracts meant one thing in American history, but +those positions and words me ... + read more → +
+ ++ + +Link to presentation +Sadducees +>Often we in the modern time totally conflate Sadducees and Pharisees but they +>are as Republicans and Democrats today... very much not the same +Origin +Back in the Davidic kingdom they are the group that sought t ... + read more → +
+ ++ + +Hellenism + +For the first time in history, Greeks redefined worldfiew to be cenetered +around the individual. Prior to Hellenism, worldviews centered around +pleasing the gods + +Alexander the Great had his own gospel (εὐαγγέλιον - euangelion: predates b ... + read more → +
+ ++ + +https://www.simplified.guide/linux/disk-health-check +Install +For ubuntu/debian based distros (which is what I primarly use presently) +sudo apt update -y && sudo apt install smartmontools -y +List hard drives +lsblk | grep disk is one way or su ... + read more → +
+ ++ + +Link to presentation +Judaism +Modern Judaism is very different from Jesus' Judaism which was distinct from +David's Judaism, etc... We, as modern westerners, need to be aware of the +religious evolution and history of Judaism to properly understand the ... + read more → +
+ ++ + +Intro +Session 1: Torah +Session 2: Prophets and Writings +Review +Torah +Big idea: partnership + +Basis of partnership / meet the characters (Genesis) +God chooses a partner / the partner chooses God (Exodus) +God defines the partnership (Leviticus) +God sha ... + read more → +
+ ++ + +Intro +I use ZFS at home in my homelab for basically all of my storage... Docker uses +ZFS backend, all my VMs have their .qcow2 images in their own zfs datasets, +and all my shares are ZFS datasets. I love ZFS but my home hardware presently +is the opp ... + read more → +
+ ++ + +import this; print(this); print("what is taking so long black!!") + + + + read more → +
+ ++ + +Chapters +Below are just quick notes or quotes from each chapter as a reminder of what to +go back to chat about. This isn't intended to be in-depth by any stretch. +Chapter 1 +"Your man has been accustomed, ever since he was a boy, to have a dozen ... + read more → +
+ ++ + +To filter for saved views from the admin console you have to use the id of +the tag you are using to filter on... +Ex: filtering for tags "Inbox" doesn't work, but for tag 18 does (the id fo the +Inbox tag). I can find that ID by clicking on ... + read more → +
+ ++ + +Steps +sudo fdisk -l +then look for the device and partition +get the Type column +mount +Example + +dumbledore in /media NO PYTHON VENV SET +❯ sudo fdisk -l + +... + +Device Boot Start End Sectors Size Id Type +/dev/sdk1 * 2048 60371951 ... + read more → +
+ ++ + +I just need to RDP into an Ubuntu box via Remmina and everytime I login I have +to authenticate to create a color managed device... which I don't even know +what that is! +To fix it? +vim /etc/polkit-1/localauthority.conf.d/02-allow-colord.conf +polkit.a ... + read more → +
+ ++ + +zfs allow -u $USER clone,load-key,create,destroy,mount,mountpoint,receive,send,rollback,compression,snapshot,hold,keylocation,bookmark tank + +load-key only needed if using encrypted datasets + + + + read more → +
+ ++ + +Assuming you have a PXE server running you only need small edits to the virt-manager config + + + read more → +
+ ++ + +I decided that I want to self-host all my docker images for the purposes of +regularly rebuilding and security scanning. The first step is to set up a +registry, which coincidently enough you can do with a Docker container 😛! +Instructions for setting ... + read more → +
+ ++ + + +Dropdown menue in upper left - doesn't look like one but just click the name of the current device. +URL will be rtsp://<ip address> <- this was the ticket for me + + + + read more → +
+ ++ + +I have started using VMs more and more in my development workflow and it's +impossible to work in a VM without an internet connection for me most of the +time. Setting up the KVM networking is kind of confusing to me and I've done it +two different way ... + read more → +
+ ++ + +man can be a pain to read... and there's lots of alternatives out there and one I've just started playing with is cheat +man man will give you this plus a billion more lines of docs, which is useful when you need it... +MAN(1) ... + read more → +
+ ++ + +I got into a pickle where I encrypted the ssh keys I use for my SSH connections on LAN, but then I couldn't run my ansible playbook on my server! ssh-keygen -p and leave the new passphrase blank saved my day (although password protected key files ar ... + read more → +
+ ++ + +Mike Driscoll recently tweeted about making +colored out with pandas DataFrames and I just had to try it for myself +Use Case +First though... why? +My biggest use case is a monitoring pipeline of mine... The details aside, the +output of my pipeline is ... + read more → +
+ ++ + +see samba config on hogwarts + + + read more → +
+ ++ + +email1@me.com +somebody_else@gmail.com + + +#! /bin/bash +# pick multiple emails from list and combine into comma seperated array +emails=`cat .../emails | fzf -m | sed 's/^\|$/"/g'|paste -sd,` + +echo $emails + + + + + read more → +
+ ++ + +My Nextcloud woes +I wrote here about setting +up www-data as the owner of any directories you want nextcloud to manage. +However, I regularly struggle wtih permissions issues on my NAS because of the +external storage app anyways so I've decided to jus ... + read more → +
+ ++ + +TIL that when setting up download clients for +radarr/sonarr/lidarr/readarr/bazarr/prowlarr that you can utilize internal DNS +and instead of hardcoding an IP address of your download client server, can use +just the CNAME record (ie. instead of 172.10 ... + read more → +
+ ++ + +I ran out of space on the SSD in my server when doing some file transfers but only 100GB was used of a 256 GB SSD? +LVM +When installing Ubuntu live server the default option for how to partition the +disk (in my experience) has been to setup an LVM gr ... + read more → +
+ ++ + +When working with tdarr remote nodes, they need to have access not only to the +same libraries but also the same transcode cache as the server otherwise the +transcodes will fail... +Network Setup +To explain I'll give a brief overview of my home setup + ... + read more → +
+ ++ + +I use portainer to monitor my docker applications at home. I like that it shows me which ports are mapped where for every container all in one view but every time I click on a port (assuming it'll take me to that application via LAN) it goes to 0.0. ... + read more → +
+ ++ + +I get https URLs and domain resolution at home with pihole's DNS/CNAME records + + + read more → +
+ ++ + +Look at notes in home-server... apt repos, zfs, etc. + + + read more → +
+ ++ + +See 02-....yaml in ansible-nas + + + read more → +
+ ++ + +I am revamping my home server and bumped myself early up to Jammy Jellyfish... +however to my peril I reused my netplan config and after hitting my server with +the 'ol netplan apply I lost connection... +DNS still seemed to kinda work externally, but ... + read more → +
+ ++ + + +Setup admin +External Storage extension +Add my nas zfs dataset +chown -R www-data:www-data on anything nextcloud uploads to. + + + + read more → +
+ ++ + +I have list [True, False, False, True] and another list [1, 2, 3, 4] and a use case where I want to filter list 2 based on list 1 to remove values that line up with the element False in list 1.... so the outcome will be [1, 4]. list(compress(list2, ... + read more → +
+ ++ + +TL;DR +As the nextcloud docs say... if you want to write to an external volume that +location has to be writeable by the user/group www-data on the host system... +so if that makes sense to you then this TIL probably isn't a ton of value.. if +not howev ... + read more → +
+ ++ + +In vim G clog % does a git clog {current file}. You get every commit that the target file is apart of (so there might be info in those commits unrelated) + + + read more → +
+ ++ + +As I was cleaning up my NAS recently I noticed that I ran out of storage even +though my disk usage looked pretty low... turns out I was keeping a mega-ton of +ZFS snapshots and due to my own ignorance at the time didn't realize the +storage cost of th ... + read more → +
+ ++ + +From my daily driver Ubuntu machine I often open nautilus, dolphin, etc. and delete a file here or there on my NAS... turns out Ubuntu sends thse file to .Trash-100 ON THE NAS so I'm effectively just moving that file and not freeing up any space... + ... + read more → +
+ ++ + +I started my homelab journey being super naive about ZFS and how to manage the +filesystem... that bit me in the butt when transfering a ton of files out of +folders and into datasets because ZFS is copy on write so I was essentially +duplicating my st ... + read more → +
+ ++ + +:PlugSnapshot, :w ~/dotfiles/nvim/snapshot.vim... keep your config safe with git! + + + read more → +
+ ++ + +I've had Plug 'hrsh7th/cmp-path' in my plugins for ever but didn't notice +until recently that I wasn't getting any filepath completion in vim! +Fuller setup instructions below the TLDR +TL;DR +Turns out I need to not be a dope and configure nvim-cmp to ... + read more → +
+ ++ + +I just started using FastAPI for a home project and needed to pass back a +dynamic number of values from a form rendered with jinja... +Dynamic Values +The jinja templating for rendering HTML based on something like a python iterable is nice and easy + + ... + read more → +
+ ++ + +I'm currently working on a self-hostable wish list app using FastAPI so we can +finally drop Amazon forever. (The lists funcionality has been super handy for +sharing holiday gift ideas with the famj!) +FastAPI +FastAPI is an amazing framework for quick ... + read more → +
+ ++ + +If you use vim-plug for managing your vim plugins, do yourself a favor and snapshot your plugins before upgrading! +:PlugSnapshot creates a vim.snapshot file that you can use to restore your plugin versions with vim -S snapshot.vim +The snapshot file ... + read more → +
+ ++ + +TODO +title = "my Title" +eval('"my" in title') + +>>> True + + +print("hello, world"); print("formatting") + + + + read more → +
+ ++ + +TODO + +import os + +import boto3 +import pytest +from moto import mock_s3 + +MY_BUCKET = "bucket" +# BAD PREFIX +MY_PREFIX = "bucket/project/data/layer/dataset/" + + +@pytest.fixture(scope="function") +def aws_credentials(): + &qu ... + read more → +
+ ++ + +I wrote up a little on exporting DataFrames to markdown and html here +But I've been playing with a web app for with lists and while I'm toying around I learned you can actually give your tables some style with some simple css classes! +To HTML +Remind ... + read more → +
+ ++ + +Pandas +pandas.DataFrames are pretty sweet data structures in Python. +I do a lot of work with tabular data and one thing I have incorporated into some of that work is automatic data summary reports by throwing the first few, or several relevant, rows ... + read more → +
+ ++ + +Amazon has crossed the line with me just one too many times now so we are looking to drop them like every other Big Tech provider.... +However, one key feature of Amazon that has been so useful for us is Lists... We can just maintain a list for each ... + read more → +
+ ++ + +I try to commit a lot, and I also try to write useful tests appropriate for the scope of work I'm focusing on, but sometimes I drop the ball... +Whether by laziness, ignorance, or accepted tech debt I don't always code perfectly and recently I was do ... + read more → +
+ ++ + +TL;DR +pandas.Series.str.contains accepts regular expressions and this is turned on by default! +Use case +We often need to filter pandas DataFrames based on several string values in a Series. + +Notice that sweet pyflyby import 😁! + +sandbox main via 3 ... + read more → +
+ ++ + + + + read more → +
+ ++ + +htop is a common command line tool for seeing interactive output of your system resource utilization, running processes, etc. +I've always been super confused about htop showing seemingly the same process several times though... +The Fix... +Just hit H ... + read more → +
+ ++ + +Unpacking iterables in python with * is a pretty handy trick for writing code that is just a tiny bit more pythonic than not. +arr: Tuple[Union[int, str]] = (1, 2, 3, 'a', 'b', 'c') + + +print(arr) +>>> (1, 2, 3, 'a', 'b', 'c') + +# the * unpacks ... + read more → +
+ ++ + +pipx is a tool I've been using to solve a few problems of mine... + +pinning formatting tools like black, flake8, isort, etc. to the same version for all my projects +keeping virtual environments clean of things like cookiecutter +python utilities I wan ... + read more → +
+ ++ + +fx is an interactaive JSON viewer for the terminal. +It's a simple tool built with Charmcli's Bubble Tea. +Installation +The installation with go was broken for me - both via the link and direct from the repo. +Now I'm not a gopher so I don't really kno ... + read more → +
+ ++ + +I use Jellyfin at home for serving up most of our media - movies and shows etc. +My dream is to have a GPU capable of transcoding any and all of our media for smooth playback on any device... +Now, I thought I'd have that by now with my Nvidia Quadro ... + read more → +
+ ++ + +Type hinting has helped me write code almost as much, if not more, than unit testing. +One thing I love is that with complete type hinting you get a lot more out of your LSP. +Typing dictionaries can be tricky and I recently learned about TypedDict to ... + read more → +
+ ++ + +I've started using Terraform to manage Snowflake infrastructure at work. +I'm still a noobie but I've got a workflow that I think makes sense... +Here's the directory setup for a simple project with some databases, schemas, and tables to manage. +terra ... + read more → +
+ ++ + +Playing around with Modal Labs +One of the first things I tried was a regular cron job... +@stub.function( + schedule=modal.Period(minutes=59), secret=modal.Secret.from_name("my-dummy-secret") +) +def say_hi(): + now = time.ctime() + sec ... + read more → +
+ ++ + +ssh-copy-id -i my.key.pub <hostname probably from tailscale> +this makes sure I can run ansible from my desktop against VMs on my server +easily if they have tailscale for the hostname - otherwise use the IP + + + read more → +
+ ++ + +https://nicolasbouliane.com/blog/nextcloud-docker-upgrade-error + + + read more → +
+ ++ + +I have a bash script called syncoid-job which boils down to a barebones - +#!/bin/bash + +syncoid --no-sync-snap --sendoptions=w --no-privilege-elevation $SYNOIC_USER@$SERVER:tank/encrypted/nas tank/encrypted/nas + +I want to run this script hourly but a ... + read more → +
+ ++ + +in /lib/systemd/system/docker.service there is an ExecStart command that got placed there when I setup Docker with Ansible - it threw the -H flag which told the daemon what hosts to setup. But I added the "hosts" key in my daemon.json and ... + read more → +
+ ++ + +I regularly need to edit system config files - take /etc/sanoid/sanoid.conf as +an example... I'll want to play with something but if I don't start Neovim as +root then I get in trouble making edits I can't save! So +suda.vim gives me +:SudaWrite which ... + read more → +
+ ++ + +I'm playing with my ansible playbook in a remote tmux session, and I'm no wiz +so I don't know the ins and outs, but I can't scroll up to get any console log +output that's not already visible on my screen. So I'm starting to end my +commands with | l ... + read more → +
+ ++ + +AJAX wasn't cutting it, traditional crontab in containers doesn't make much +sense to me, webcron is recommended but I don't want to register with anything +outside my LAN... Turns out you can just spin up an identical container with a +different entry ... + read more → +
+ ++ + +Logging instead of printing +I am trying to adopt logger.debug instead of print but ran into a confusing +thing in ipython during Advent of Code... I riddled by script with +logger.debug (yes after setting logging.setLevel('DEBUG')) but in ipython +none ... + read more → +
+ ++ + +I wanted to break down some long lines in a Markdown table cell to make it look +nicer on my blog but \n didn't do anything for me... turns out is the +magic sauce + + + +Column 1 +Column 2 + + + + +Key +Doggo ipsum many pats. Borkdrive borking doggo doing me a ... + read more → +
+ +Playing around with Modal Labs
\nOne of the first things I tried was a regular cron job...
\n@stub.function(\n schedule=modal.Period(minutes=59), secret=modal.Secret.from_name("my-dummy-secret")\n)\ndef say_hi():\n now = time.ctime()\n secret = os.environ.get("dummy-secret")\n print(f"Hello {os.environ.get('USER', 'Rodney')} at {now}")\n print(f"{secret=}")\n\n
\nThis can get deployed with modal deploy --name <app name> <path to .py file with the stub and function defined in it>
This function gets deployed as an app that I conveniently call say_hi
(as far\nas I can tell the app name can be anything - as I add functions to this same\napp and deploy with the same name to get a new version)
Notice that this also is an example of giving access to a secret - defined in the Modal Labs dashboard
\nWe can take a look at the apps running at https://modal.com/apps
\nI then added another function to experiment with custom container images and\nsaw then that Modal will just slap a new version on anything provisioned with\nthe same name (intuitive enough for sure) so when I add functions to my .py\nscript and run modal deploy --name say_hi myscript.py
over and over, the app\ncalled say_hi
in the Modal apps dashboard just gets a new version
This means I can spin up several instances of functionally the same app but with different names/versions etc...\nQ: Maybe there's gitops or policy stuff builtin to app names then?
\nI needed to take down an app I deployed as a duplicate but you don't stop apps\nby name, you stop them by an id... see below
\n\nmodal-sandbox/modal_sandbox main ×1 ×9 via v3.10.6(modal-sandbox)\n✗ modal app stop --help\n\n Usage: modal app stop [OPTIONS] APP_ID\n\n Stop an app.\n\n╭─ Arguments ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮\n│ * app_id TEXT [default: None] [required] │\n╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\n╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮\n│ --help Show this message and exit. │\n╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\n\n\nmodal-sandbox/modal_sandbox main ×1 ×9 via v3.10.6(modal-sandbox)\n❯ modal app list\n┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\n┃ App ID ┃ Description ┃ State ┃ Creation time ┃ Stop time ┃\n┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩\n│ ap-lzy1AAuVy7POFkUcDKRxpQ │ print_info │ deployed │ 2022-12-28 20:59:07-06:00 │ │\n│ ap-qYjE45dciqgT3C3CpNp3RL │ say_hi │ deployed │ 2022-12-28 19:49:22-06:00 │ │\n│ ap-X7FYneUeYV5IKHcyirSb87 │ link-scraper │ stopped │ 2022-12-28 15:39:02-06:00 │ 2022-12-28 15:39:04-06:00 │\n│ ap-UOXTUU4uSRx2UZypJOcAsk │ example-get-started │ stopped │ 2022-12-28 15:17:47-06:00 │ 2022-12-28 15:17:49-06:00 │\n└───────────────────────────┴─────────────────────┴──────────┴───────────────────────────┴───────────────────────────┘\n\nmodal-sandbox/modal_sandbox main ×1 ×9 via v3.10.6(modal-sandbox)\n❯ modal app stop ap-lzy1AAuVy7POFkUcDKRxpQ\n\n
\nI ran modal deploy ...
after comitting some stuff I wanted to try BUT I had\nchanges in my file I didn't want to deploy... some git safety would be nice for\ndeployment!
\n\ngit stash && modal deploy .. && git stash pop
\n
Question for Modal team - in my modal sandbox repo at commit:
\naab6162 (HEAD -> main) HEAD@{1}: commit: print base version of my own image to prove it to me\n 1 file changed, 2 insertions(+)\n\n
\nAn environment variable, BASE_VERSION
that I expect to be in my base image\nwas not available to the python function in my Modal app... hopefully the log\nis still\nhere
ssh-copy-id -i my.key.pub <hostname probably from tailscale>
\nthis makes sure I can run ansible from my desktop against VMs on my server\neasily if they have tailscale for the hostname - otherwise use the IP
https://nicolasbouliane.com/blog/nextcloud-docker-upgrade-error
\n\n", + "summary": "", + "date_published": "2022-12-28T09:39:27-00:00", + "image": "", + "authors": [ + { + "name": "Nicholas Payne", + "url": "https://github.com/pypeaday", + "avatar": "https://github.com/pypeaday.png" + } + ], + "tags": [ + "homelab", + "linux", + "tech" + ], + "language": "en" + }, + { + "id": "https://pype.dev/systemd-timer-for-syncoid.html", + "url": "https://pype.dev/systemd-timer-for-syncoid.html", + "title": "Systemd timer for syncoid", + "content_html": "\nI have a bash script called syncoid-job
which boils down to a barebones -
#!/bin/bash\n\nsyncoid --no-sync-snap --sendoptions=w --no-privilege-elevation $SYNOIC_USER@$SERVER:tank/encrypted/nas tank/encrypted/nas\n
\nI want to run this script hourly but as my user (notice the no-privilege-elevation flag)
\nFirst - create a systemd unit file at /etc/systemd/system/syncoid-replication.service
[Unit]\nDescription=ZFS Replication With Syncoid\n\n[Service]\nType=oneshot\nExecStart=/$HOME/dotfiles/syncoid-job\nUser=$USER\nGroup=$GROUP\n\n[Install]\nWantedBy=multi-user.target\n\n
\nThen we save the unit file, enable the service, and then start it
\nsystemctl enable syncoid-replication.service\nsystemctl start syncoid-replication.service\n\n
\n\n\nNote this will run that script... so be ready for syncoid to do its thing
\n
Now for the timer... We create /etc/systemd/system/syncoid-replication.timer
[Unit]\nDescription=Run syncoid-replication every hour\n\n[Timer]\nOnCalendar=hourly\n\n[Install]\nWantedBy=timers.target\n\n
\nHit it with a systemctl enable syncoid-replication.timer
and you're in business!
in /lib/systemd/system/docker.service there is an ExecStart command that got placed there when I setup Docker with Ansible - it threw the -H flag which told the daemon what hosts to setup. But I added the "hosts" key in my daemon.json and it broke - so removing the -H flag from the systemd unit fixed it
\n\n", + "summary": "", + "date_published": "2022-12-21T10:02:25-00:00", + "image": "", + "authors": [ + { + "name": "Nicholas Payne", + "url": "https://github.com/pypeaday", + "avatar": "https://github.com/pypeaday.png" + } + ], + "tags": [ + "linux", + "linux", + "tech" + ], + "language": "en" + }, + { + "id": "https://pype.dev/suda-vim-for-sudo-access-to-files.html", + "url": "https://pype.dev/suda-vim-for-sudo-access-to-files.html", + "title": "suda.vim for sudo access to files", + "content_html": "\nI regularly need to edit system config files - take /etc/sanoid/sanoid.conf as\nan example... I'll want to play with something but if I don't start Neovim as\nroot then I get in trouble making edits I can't save! So\nsuda.vim gives me\n:SudaWrite
which let's me write that buffer with sudo privileges even though\nI'm Neovim is running with my login user!
I'm playing with my ansible playbook in a remote tmux session, and I'm no wiz\nso I don't know the ins and outs, but I can't scroll up to get any console log\noutput that's not already visible on my screen. So I'm starting to end my\ncommands with | less
so I can page through the console output!
ansible-playbook plays.yml -v --tags mytag | less
AJAX wasn't cutting it, traditional crontab in containers doesn't make much\nsense to me, webcron is recommended but I don't want to register with anything\noutside my LAN... Turns out you can just spin up an identical container with a\ndifferent entrypoint to /cron.sh that does what you need!
\n\n\nNote that this is a task in an Ansible playbook - but the docker-compose is straight forward
\n
So the only thing you need to make sure of is that all the configuration\noptions - data volumes, user permissions, etc. are identical between the\ncontainers running the cron job and the one actually hosting NextCloud. This\nensures that the container running cron has proper access to the database and\nfilesystem - or at least the same access as NextCloud proper.
\n- name: Nextcloud Cron Docker Container\n docker_container:\n name: nextcloud-cron\n image: "{{ nextcloud_image }}"\n pull: true\n links:\n - nextcloud-mysql:mysql\n entrypoint: /cron.sh\n volumes:\n - "{{ nextcloud_data_directory }}/nextcloud:/var/www/html:rw"\n env:\n MYSQL_HOST: "mysql"\n MYSQL_DATABASE: "nextcloud"\n MYSQL_USER: "{{ nextcloud_sql_user }}"\n MYSQL_PASSWORD: "{{ nextcloud_sql_password }}"\n NEXTCLOUD_TRUSTED_DOMAINS: "{{ nextcloud_hostname }}.{{ ansible_nas_domain }}"\n PUID: "{{ nextcloud_user_id }}"\n PGID: "{{ nextcloud_group_id }}"\n TZ: "{{ ansible_nas_timezone }}"\n restart_policy: unless-stopped\n memory: "{{ nextcloud_memory }}"\n\n
\n\n",
+ "summary": "",
+ "date_published": "2022-12-13T06:43:45-00:00",
+ "image": "",
+ "authors": [
+ {
+ "name": "Nicholas Payne",
+ "url": "https://github.com/pypeaday",
+ "avatar": "https://github.com/pypeaday.png"
+ }
+ ],
+ "tags": [
+ "homelab",
+ "homelab",
+ "tech"
+ ],
+ "language": "en"
+ },
+ {
+ "id": "https://pype.dev/call-basicconfig-to-get-python-log-messages-in-ipython.html",
+ "url": "https://pype.dev/call-basicconfig-to-get-python-log-messages-in-ipython.html",
+ "title": "Call basicConfig to get Python log messages in iPython",
+ "content_html": "\nI am trying to adopt logger.debug
instead of print
but ran into a confusing\nthing in ipython during Advent of Code... I riddled by script with\nlogger.debug
(yes after setting logging.setLevel('DEBUG')
) but in ipython\nnone of my log messages showed up!
import logging\n\nlogger = logging.getLogger(__name__)\nlogger.setLevel("DEBUG")\n\n
\nTurns out what I was missing was a call to basicConfig
import logging\n\n# forget this and your messages are in the ether! or at least not seen in ipython...\nlogging.basicConfig()\n\nlogger = logging.getLogger(__name__)\nlogger.setLevel("DEBUG")\n
\nWant your new messages to show up while iterating on something without killing\nthe ipython kernel?
\nfrom importlib import reload\nreload(logging) # to make sure you get new log messages you add while developing!\n\n
\n\n",
+ "summary": "",
+ "date_published": "2022-12-10T14:04:23-00:00",
+ "image": "",
+ "authors": [
+ {
+ "name": "Nicholas Payne",
+ "url": "https://github.com/pypeaday",
+ "avatar": "https://github.com/pypeaday.png"
+ }
+ ],
+ "tags": [
+ "python",
+ "cli",
+ "tech"
+ ],
+ "language": "en"
+ },
+ {
+ "id": "https://pype.dev/new-lines-in-markdown-tables.html",
+ "url": "https://pype.dev/new-lines-in-markdown-tables.html",
+ "title": "New lines in Markdown tables",
+ "content_html": "\nI wanted to break down some long lines in a Markdown table cell to make it look\nnicer on my blog but \\n didn't do anything for me... turns out
is the\nmagic sauce
Column 1 | \nColumn 2 | \n
---|---|
Key | \nDoggo ipsum many pats. Borkdrive borking doggo doing me a frighten doggorino, noodle horse heckin. what a nice floof. Pupper borking doggo you are doing me a frighten, much ruin diet. | \n
--- | \n--- | \n
Column 1 | \nColumn 2 | \n
---|---|
Key | \nDoggo ipsum many pats. Borkdrive borking doggo doing me a frighten doggorino, noodle horse heckin. what a nice floof. Pupper borking doggo you are doing me a frighten, much ruin diet. | \n
--- | \n--- | \n
Switching to Vim opened a whole new world to me for interacting with a computer\nand for getting things done. Before I adopted Vim I used GUIs for everything\nbecause I thought that's how it had to be done... Notes in OneNote, code using\na GUI editor, different notes in TiddlyWiki, slides for work in PowerPoint,\nslides for church using Logos, etc... Adopting Vim allowed me to disconnect a\nspecific tool from the problem that tool is solving - because usually I just\nneed to write text (notes, code, slides, etc.). Now, very nearly everything I\ndo is from a text-based and git-based workflow... I put all my notes on\nbasically anything just in my blog, which is all markdown and deployed to GH\nwith Markata on every push (living dangerously pushing to main) - and that's\nall done easily from Vim with nice syntax highlighting, fast response,\nintegrated git-plugins, etc.. I keep project-specific task lists just in\nmarkdown files and I have Vim/tmux shortcuts to quickly add todos for any\nproject (todo list is done with markata todoui) and I can get there fast\nbecause my Vim workflow dovetails with Tmux nicely. Also I can pull that list\nup right from the terminal, which I'm already in because Vim.... Vim also\npushed me into the cli more - because Vim is so easily extended with cli tools\nand I'm already in the terminal... The builtin functionality also made things\nmake more sense - no more right-click, find "refactor all" or "rename symbol"\n(for some stupid reason)... Vim find-replace is so intuitive and if I need it\nextended then I learned what sed was because of Vim. Moving quickly in Vim also\nenables me to do my job incredibly fast because I hop into several projects a\nday in a coaching role - if I was bound by GUIs I'd be waiting forever for\nstartup, would lose which GUI instance was which project, etc... Being in the\nterminal also made Tmux a trivial choice - now I have 90 tmux sessions, all\nnamed appropriately, ready for me to jump back to and all while keeping the\nmajority of RAM still free for Chrome. Vim as my IDE also forced me to learn\nway more about Python (I'm a python developer primarily), how LSP works, how to\nconfigure a development environment, etc... things I took for granted in my GUI\nworkflows, or never knew, or worse - thought I knew but deeply misunderstood.\nNow that I understand them better, I can coach my peers more effectively even\nif they are still in a GUI-based ecosystem.
\nBasically, (Neo)Vim actually did change my life and I'm really thankful for it\n(maybe that should be the title?)
\n\n", + "summary": "", + "date_published": "2022-11-12T19:39:19-00:00", + "image": "", + "authors": [ + { + "name": "Nicholas Payne", + "url": "https://github.com/pypeaday", + "avatar": "https://github.com/pypeaday.png" + } + ], + "tags": [ + "linux", + "vim", + "tech" + ], + "language": "en" + }, + { + "id": "https://pype.dev/make-a-series-of-directories-fast.html", + "url": "https://pype.dev/make-a-series-of-directories-fast.html", + "title": "Make a series of directories fast!", + "content_html": "\nmkdir s{1..10} will make directories s1, s2, ... s10 in one command!
\n\n", + "summary": "", + "date_published": "2022-11-10T15:27:50-00:00", + "image": "", + "authors": [ + { + "name": "Nicholas Payne", + "url": "https://github.com/pypeaday", + "avatar": "https://github.com/pypeaday.png" + } + ], + "tags": [ + "linux", + "cli", + "tech" + ], + "language": "en" + }, + { + "id": "https://pype.dev/hebrew-bible-full-class.html", + "url": "https://pype.dev/hebrew-bible-full-class.html", + "title": "Hebrew Bible Full Class", + "content_html": "\nClass link\nClassroom notes (Must be on home network)
\nThis class is not so much a survey of the HB, it is Tim's attempt to distil the\nmost helpful things for understanding it in a consumable way for laypeople.
\nA chunk of this is the other people giving some of their own background. One\nlady said something that might be helpful for ministry - "Maybe that thing that\nI saw as 'you don't love me' is 'I don't know how to love you'"
\n!!! note "how to love"
\nMaybe that thing that I saw as 'you don't love me' is 'I don't know how to love you'\n
\n!!! danger "Christian coping strategy for the Olt Testament"
\n1. Hero-example model\n * Stories get isolated and distilled down into a simple moral model, where the hero is just the hero.\n * Veggie-Tales is uber-guilty of this nonsense\n * There's something correct about this - but the oversimplification usually comes out of a massive re-writting of the stories, then anyone raised on those versions of the story is scaldalized when they read it for real\n\n2. Poltical-authority source\n * Political parties hijacking "The Bible says X about Y" as a means to harvest authority from a book that many people claim is authoritative.\n\n3. Theology answer book model\n * Treating the Bible like a dictionary of key/value pairs where keys are questions and values are simple answers.\n * This ignores narrative, and general literacy.\n * The instinct may be right - the Bible should profoundly shape my view of everything, but it isn't simple\n\n4. Inspirational-heart-warming model\n * Verse-a-day calendars\n * Jermiah 29:11\n
\n!!! warning ""
\nAre we imposing a set of questions that are foreign to what the authors are\ntrying to communicate? do we need to set our cultural agendas aside to just\nlisten?\n
\nA result of asking the wrong questions is the common story of people's faith being dismantled by reading the Bible
\n!!! note "DL Baker - Two Testaments - One Bible"
\nOne of the most fundamental questions which has faced theology and the\nChurch in every age... is whether or not Christianity also needs an Old\nTestament. Is the Old Testament to be thrown away as obsolete, or pre-\nserved as a relic from days of yore, or treasured as a classic and read by\nscholars, or used occasionally as a change from the New Testament, or\nkept in a box in case it should be needed some day? Or is the Old Testa-\nment an essential part of the Christian Bible, with continuing validity along-\nside the New Testament? —\n
\nThe Bible most often refers to itself as the Writings
\n!!! note "Road to Emmaus"
\nJesus confronts a couple guys walking to Emmaus after he is resurrected and\nmore or less calls them idiots/fools for not understanding that the\nWritings point to an annointed king who will suffer death for the sake of\nredemption. He's recognized by them once their eyes are opened then he vanishes\n
\nWeird stuff
\nPaul assumes when writing to Timothy that he, and probably believers in general, are in a community of people who are regularly learning about Yahweh through the Scriptures as a family
\n!!! scripture "2 Timothy 3:15-16"
\n... and that from childhood you ahve known the sacred writings which are\nable to give you the wisdom that leas to salvation through faith which is\nin Christ Jesus. All Scripture is inspired by God and profitable for\nteaching, for reproof, for correction, for training in righteousness\n
\n!!! success ""
\nFor Paul, the `Scriptures` here are our OT, the Hebrew Bible. For Paul, the HB\nis entirely _wisdom literature_ that leads to salvation through Jesus\n
\nThe question of "What are the Scriptures?" is covered in the next session
\nTo answer the question 'How do we read the HB?' we have to ask the question\n'Whose book is the HB?'
\nOld Testament
is the Christian term for a set of writings that comprise about\n3/4 of the Christian Bible. The authors themselves though refer to those\nwritings as the Scriptures
. One time it is called the Old Covenant
by Paul\n, but he's talking about Synagogue readings of the Torah portion in synagogues.\nTHe phrase Hebrew Bible
is a modern term that is a bit more neutral.
\n\nSo, what is our Bible?
\n
!!! scripture "Luke 24:25-27"
\n25 And he said to them, “O foolish ones, and slow of\nheart to believe all that the prophets have spoken! 26 Was it not necessary\nthat the Christ should suffer these things and enter into his glory?”\n27 And beginning with Moses and all the Prophets, he interpreted to them in\nall the Scriptures the things concerning himself.\n
\n\n\nMoses and the Prophets
\n
Jweish reference to the books in our OT, in the Hebrew Bible, but the arangement is different...
\n!!! note "TaNaK"
\n1. T = Torah (first 5 books)\n2. N - Nevi'im (Prophets: Joshua - Kings) [Christians often call these the 'historial books']\n3. K - Ketuvim\n\n| **Torah** | **Pentateuch** |\n| --- | --- |\n| Genesis - Exodus - Leviticus - Numbers Deuteronomy | Genesis - Exodus - Leviticus - Numbers - Deuteronomy |\n| **Nevi'im - The Prophets** | **History** |\n| *Former Prophets* <br/> Joshua - Judges - Samueal - Kings | Joshua - Judges - Ruth <br/> 1-2 Samuel - 1-2 Kings <br/> 1-2 Chronicles <br/> Ezra - Nehemiah - Ester |\n| *Later Prophets* <br/> Isaiah - Jeremiah - Ezekiel <br/> Hosea - Joel - Amos - Obadiah - Jonah - Micah - Nahum - Habakkuk - Zephaniah - Haggai - Zechariah - Malachi | **Poetry** <br/> Job - Psalms - Proverbs - Ecclesiastes - Song of Solomon |\n| **Kethuvim - The Writings** | **Prophets** |\n| Psalms - Job - Proverbs <br/> Ruth - Song of Songs - Ecclesiastes - Lamentations - Esther [The Megillot] <br/> Daniel - Ezra - Nehemiah - Chronicles | Isiah - Jeremiah - Lamentations <br/> Ezekiel - Daniel <br/> Hosea - Joel - Amos - Obadiah - Jonah - Micah - Nahum - Habakkuk - Zephaniah - Haggai - Zechariah - Malachi |\n
\n!!! scripture "Luke 11:49–51 (ESV) "
\n49 Therefore also the Wisdom of God said, ‘I will send them prophets and\napostles, some of whom they will kill and persecute,’ 50 so that the blood\nof all the prophets, shed from the foundation of the world, may be charged\nagainst this generation, 51 from the blood of Abel to the blood of\nZechariah, who perished between the altar and the sanctuary. Yes, I tell\nyou, it will be required of this generation.\n
\n\n\nBlood of Abel to the blood of Zechariah...
\n
Why would Jesus pick these two events? Abel is murdered on page 4, Zechariah is\nmurdered in the last part of Chronicles, which in the TaNaK is significant...\nJesus is saying that all the prophets from the beginning of the Scriptures to\nthe end... All the prophets from A-Z so to speak
\n!!! note "Scriptures"
\n"Books" as we know it, bound papers with writing on it, called a 'codex'\nwasn't a thing until a couple hundred years post-Jesus... so when the\nauthors say "The Scriptures" we need to keep in mind that Jews had the\nscriptures in their minds and hearts, not on paper (save for a couple very\nexpensive scrolls). So the structure of the scriptures is also apart of the\nJewish being... This interaction with the Scriptures is _very very very\ndifferent than how we interact with the Bible_\n
\n!!! note "4QMMT"
\n"The scrolls of Moses, the words of the prophets, and of David."\n
\n!!! note "Philo of Alexandria"
\nThe laws and the oracles given by inspiration through the prophets and the\nPsalms, and the other scrolls whereby knowledge and piety are increased and\ncompleted...\n\n- De Vita Contemplatetiva, 25\n
\nAround 100-200 AD there was a split in the Jewish community over things like\nhow the Temple and sacrifices were to be run, etc. A group got kicked out, so\nthey grabbed some scrolls and went to start what we'd think of as a Monastic\ncommunity. Qumran community is where they went, and the scrolls this group\nmanaged are called the Dead Sea Scrolls.
\nOut of DSS we have some of the oldest biblical scrolls, they have their own\nwritings and liturgies since they were all priests basically too.
\nThe scrolls were hidden in caves before the Romans marched on Qumran. They were\nfound in the 1940s by a bunch of shepherds. A few showed up online for sale and\nthat's how we found out about their exitence.... These scrolls give us\npre-Christian Jewish Bible nerds...
\nQumran community didn't know about Jesus - they thought the Messiah would be a\nman called The Teacher of Righteousness
\nThe DSS preserved for us, not only ancient biblical texts, but also the method\nby which scrolls were created. They were well-preserved papyrus that was\nstiched together - literal stitches. We also have obvious additions from Qumran\ncommunity as well as notes from priests and corrections from missed\ntranscribing.
\nThe DSS scrolls, being the oldest stitched together set of scrolls, teach us\nhow scrolls and collections of ancient holy texts were put together. We need to\nkeep this in mind when we think about where our Christian Bible came from
\nThe beginning and ending of our books might/are filled with hyperlinks that\ncall a reader's mind back to other stories. It's the way of linking context and\nstories to one another before the writings are in a codex
\n\n\nHyperlinks - language/syntax that remind a reader of antoher scroll - help us\nunderstand the structure of the Hebrew Bible
\n
!!! note "A favorite quote from Tim"
\nSo, you can see I'm interested in a historical question of like the\ncollection [Hebrew Bible] was produced by a group of people. What did they\nmean by it? And we can actually know a lot about what they meant and locate\nthem and read it the way they wanted us to read it, and pick up what\nthey're saying. And, lo and behold, you know, I hope to convince you\nthat—and this is all pre-Christian—what's happening here and what this all\npoints to and means, fits hand in glove with how Jesus and Paul and the\napostles talk about these texts.\nSo that's different from saying nobody\nknew what these texts meant. The events of Jesus happen, and then we go\nreread it, and it has a whole new meaning that no one has ever imagined. It\nseems to me what actually happened in history was a little more interesting\nand complicated than that. [17:30-18:21]\n
\n\n",
+ "summary": "",
+ "date_published": "2022-11-05T06:27:40-00:00",
+ "image": "",
+ "authors": [
+ {
+ "name": "Nicholas Payne",
+ "url": "https://github.com/pypeaday",
+ "avatar": "https://github.com/pypeaday.png"
+ }
+ ],
+ "tags": [
+ "bible-project",
+ "faith"
+ ],
+ "language": "en"
+ },
+ {
+ "id": "https://pype.dev/case-insensitive-search-in-vim.html",
+ "url": "https://pype.dev/case-insensitive-search-in-vim.html",
+ "title": "Case-insensitive search in Vim",
+ "content_html": "\n/mysearch\\c will match mysearch, MYSEARCH, mYSeArCh...
\n\n", + "summary": "", + "date_published": "2022-10-21T06:40:21-00:00", + "image": "", + "authors": [ + { + "name": "Nicholas Payne", + "url": "https://github.com/pypeaday", + "avatar": "https://github.com/pypeaday.png" + } + ], + "tags": [ + "vim", + "vim", + "tech" + ], + "language": "en" + }, + { + "id": "https://pype.dev/faithful.html", + "url": "https://pype.dev/faithful.html", + "title": "Faithful", + "content_html": "\n\n!!! Exodusds 34:6
\nCompassioante and gracious, slow to anger, overflowing with loyal love and faithfulness\n
\nFaithfulness - Emet (can be translated 'Truth')\nRelated to "Amen" which is untranslated Hebrew expression meaning "that's truth"
\nMoses has to hold his hands up when Israel faces the Amalekites. Joshua (and another) bring Moses a rock to sit on and hold is hands up so they could be Emet.
\nDescribs trustiworthiness
\nExodus 18:21 - Moses apoints leaders are to be "Emet"
\nGod is a rock - he is faithful, just, and upright
\nHebrew word for trust is He'Emin which is the verb form of Emet
\nAbraham considers God Emet, he He'Emin's God and God blesses this by creating Isreal.
\nIsrael, In Exodus 14:31, He'Emin's God (until they see the gians in Canaan that is)
\n1 Kings 1:6 says David walked in Emet with God
\n2 Samuel 7:16, God blesses David and says his kingdom will have Emet
\nRomans 15:8-9 says Jesus came on behalf of God's faithfulness.
\n!!! note "1"
\nThe Hebrew word “emet” is translated with words like “faithful,”\n“reliable,” “sure,” “trustworthy,” and “amen.” Read aloud Psalm 36:5-6 ,\nPsalm 19:7 , and Psalm 41:13 and discuss what the psalmists are\ncommunicating in these passages when they use the word “emet.”\n
\n!!! scripture "Psalms 36:5-6"
\n5Your lovingkindness, O Lord, extends to the heavens,\n\nYour faithfulness reaches to the skies.\n\n6Your righteousness is like the mountains of God;\n\nYour judgments are like a great deep.\n\nO Lord, You preserve man and beast.\n
\n!!! scripture "Psalms 19:7"
\n7The law of the Lord is perfect, restoring the soul;\n\nThe testimony of the Lord is sure, making wise the simple.\n
\n!!! scripture "Psalms 41:13"
\n13Blessed be the Lord, the God of Israel,\n\nFrom everlasting to everlasting.\n\nAmen and Amen.\n
\nI think the lesson here is pretty simple - God is faithful, full stop. His\nfaithfulness doesn't look necessarily like how we might want... when I was a\nkid I would be upset if my parents didn't respond to me in the way I wanted,\nand my kids will certainly share that disappointment. But I am faithful to my\nchildren - sometimes the main issue is a child's outlook on a situation or\nworldview. I think that metaphor holds true in relation to humans and Yahweh -\nhe sees the whole world, we see a part of it so we cannot understand\nfaithfulness fully, in the same way that my children can't understand my\nfaithfulness to them fully - even to the point of being upset or thinking that\nI'm not being faithful
\n!!! note "2"
\nGod promised the Israelites that he would give them a king of peace that\nwould rule forever and ever (e.g. 2 Samuel 7:16). However, Israel’s kingdom\ncollapsed and they found themselves without a home or a king. Compare the\nbeginning of Psalm 89 (vv. 1-10) with the way it closes (vv. 46-52). What\ndo you think it practically looks like to trust God when all seems lost?\n
\n!!! scripture "2 Samuel 7:16"
\n16Your house and your kingdom shall endure before Me forever; your throne shall be established forever.” ’ ”\n
\n!!! scripture "PSALM 89"
\nThe Lord’s Covenant with David, and Israel’s Afflictions.\n\nA Maskil of Ethan the Ezrahite.\n\n1I will sing of the lovingkindness of the Lord forever;\n\nTo all generations I will make known Your faithfulness with my mouth.\n\n2For I have said, “Lovingkindness will be built up forever;\n\nIn the heavens You will establish Your faithfulness.”\n\n3“I have made a covenant with My chosen;\n\nI have sworn to David My servant,\n\n4I will establish your seed forever\n\nAnd build up your throne to all generations.” Selah.\n\n5The heavens will praise Your wonders, O Lord;\n\nYour faithfulness also in the assembly of the holy ones.\n\n6For who in the skies is comparable to the Lord?\n\nWho among the sons of the mighty is like the Lord,\n\n7A God greatly feared in the council of the holy ones,\n\nAnd awesome above all those who are around Him?\n\n8O Lord God of hosts, who is like You, O mighty Lord?\n\nYour faithfulness also surrounds You.\n\n9You rule the swelling of the sea;\n
\n!!! note "3"
\nUltimately, God answers the psalmist’s cries in the person of Jesus. Compare 2 Samuel 7:16\n2 Samuel 7:16\n\n16Your house and your kingdom shall endure before Me forever; your throne shall be established forever.” ’ ”\n\nto Hebrews 1:8-9\nHebrews 1:8-9\n\n8But of the Son He says,\n\n“Your throne, O God, is forever and ever,\n\nAnd the righteous scepter is the scepter of His kingdom.\n\n9You have loved righteousness and hated lawlessness;\n\nTherefore God, Your God, has anointed You\n\nWith the oil of gladness above Your companions.”\n\n. How does King Jesus embody and fulfill the ancient promises of God (e.g. John 1:14\nJohn 1:14\n\nThe Word Made Flesh\n\n14And the Word became flesh, and dwelt among us, and we saw His glory, glory as of the only begotten from the Father, full of grace and truth.\n\n, Hebrews 3:5-6\nHebrews 3:5-6\n\n5Now Moses was faithful in all His house as a servant, for a testimony of those things which were to be spoken later; 6but Christ was faithful as a Son over His house—whose house we are, if we hold fast our confidence and the boast of our hope firm until the end.\n\n, and Romans 15:8-9\nRomans 15:8-9\n\n8For I say that Christ has become a servant to the circumcision on behalf of the truth of God to confirm the promises given to the fathers, 9and for the Gentiles to glorify God for His mercy; as it is written,\n\n“Therefore I will give praise to You among the Gentiles,\n\nAnd I will sing to Your name.”\n\n)?\n
\n!!! note "4"
\nRead Hebrews 10:22-25\nHebrews 10:22-25\n\n22let us draw near with a sincere heart in full assurance of faith, having our hearts sprinkled clean from an evil conscience and our bodies washed with pure water. 23Let us hold fast the confession of our hope without wavering, for He who promised is faithful; 24and let us consider how to stimulate one another to love and good deeds, 25not forsaking our own assembling together, as is the habit of some, but encouraging one another; and all the more as you see the day drawing near.\n\n, Hebrews 11\nHebrews 11\n\nThe Triumphs of Faith\n\n1Now faith is the assurance of things hoped for, the conviction of things not seen. 2For by it the men of old gained approval.\n\n3By faith we understand that the worlds were prepared by the word of God, so that what is seen was not made out of things which are visible. 4By faith Abel offered to God a better sacrifice than Cain, through which he obtained the testimony that he was righteous, God testifying about his gifts, and through faith, though he is dead, he still speaks. 5By faith Enoch was taken up so that he would not see death; and he was not found because God took him up; for he obtained the witness that before his being taken up he was pleasing to God. 6And without faith it is impossible to please Him, for he who comes to God must believe that He is and that He is a rewarder of those who seek Him. 7By faith Noah, being warned by God about things not yet seen, in reverence prepared an ark for the salvation of his household, by which he condemned the world, and became an heir of the righteousness which is according to faith.\n\n8By faith Abraham, when he was called, obeyed by going out to a place which he was to receive for an inheritance; and he went out, not knowing where he was going. 9By faith he lived as an alien in the land of promise, as in a foreign land, dwelling in tents with Isaac and Jacob, fellow heirs of the same promise; 10for he was looking for the city which has foundations, whose architect and builder is God. 11By faith even Sarah herself received ability to conceive, even beyond the proper time of life, since she considered Him faithful who had promised. 12Therefore there was born even of one man, and him as good as dead at that, as many descendants as the stars of heaven in number, and innumerable as the sand which is by the seashore.\n\n13All these died in faith, without receiving the promises, but having seen them and having welcomed them from a distance, and having confessed that they were strangers and exiles on the earth. 14For those who say such things make it clear that they are seeking a country of their own. 15And indeed if they had been thinking of that country from which they went out, they would have had opportunity to return. 16But as it is, they desire a better country, that is, a heavenly one. Therefore God is not ashamed to be called their God; for He has prepared a city for them.\n\n17By faith Abraham, when he was tested, offered up Isaac, and he who had received the promises was offering up his only begotten son; 18it was he to whom it was said, “In Isaac your descendants shall be called.” 19He considered that God is able to raise people even from the dead, from which he also received him back as a type. 20By faith Isaac blessed Jacob and Esau, even regarding things to come. 21By faith Jacob, as he was dying, blessed each of the sons of Joseph, and worshiped, leaning on the top of his staff. 22By faith Joseph, when he was dying, made mention of the exodus of the sons of Israel, and gave orders concerning his bones.\n\n23By faith Moses, when he was born, was hidden for three months by his parents, because they saw he was a beautiful child; and they were not afraid of the king’s edict. 24By faith Moses, when he had grown up, refused to be called the son of Pharaoh’s daughter, 25choosing rather to endure ill-treatment with the people of God than to enjoy the passing pleasures of sin, 26considering the reproach of Christ greater riches than the treasures of Egypt; for he was looking to the reward. 27By faith he left Egypt, not fearing the wrath of the king; for he endured, as seeing Him who is unseen. 28By faith he kept the Passover and the sprinkling of the blood, so that he who destroyed the firstborn would not touch them. 29By faith they passed through the Red Sea as though they were passing through dry land; and the Egyptians, when they attempted it, were drowned.\n\n30By faith the walls of Jericho fell down after they had been encircled for seven days. 31By faith Rahab the harlot did not perish along with those who were disobedient, after she had welcomed the spies in peace.\n\n32And what more shall I say? For time will fail me if I tell of Gideon, Barak, Samson, Jephthah, of David and Samuel and the prophets, 33who by faith conquered kingdoms, performed acts of righteousness, obtained promises, shut the mouths of lions, 34quenched the power of fire, escaped the edge of the sword, from weakness were made strong, became mighty in war, put foreign armies to flight. 35Women received back their dead by resurrection; and others were tortured, not accepting their release, so that they might obtain a better resurrection; 36and others experienced mockings and scourgings, yes, also chains and imprisonment. 37They were stoned, they were sawn in two, they were tempted, they were put to death with the sword; they went about in sheepskins, in goatskins, being destitute, afflicted, ill-treated 38(men of whom the world was not worthy), wandering in deserts and mountains and caves and holes in the ground.\n\n39And all these, having gained approval through their faith, did not receive what was promised, 40because God had provided something better for us, so that apart from us they would not be made perfect.\n\n, and Hebrews 12:1-3\nHebrews 12:1-3\n\nJesus, the Example\n\n1Therefore, since we have so great a cloud of witnesses surrounding us, let us also lay aside every encumbrance and the sin which so easily entangles us, and let us run with endurance the race that is set before us, 2fixing our eyes on Jesus, the author and perfecter of faith, who for the joy set before Him endured the cross, despising the shame, and has sat down at the right hand of the throne of God.\n\n3For consider Him who has endured such hostility by sinners against Himself, so that you will not grow weary and lose heart.\n\n. After reading these passages, name one example of what it looks like to put our trust in God.\n
\n\n",
+ "summary": "",
+ "date_published": "2022-10-21T06:31:33-00:00",
+ "image": "",
+ "authors": [
+ {
+ "name": "Nicholas Payne",
+ "url": "https://github.com/pypeaday",
+ "avatar": "https://github.com/pypeaday.png"
+ }
+ ],
+ "tags": [
+ "bible-project",
+ "faith"
+ ],
+ "language": "en"
+ }
+ ]
+}
\ No newline at end of file
diff --git a/archive-2022.rss b/archive-2022.rss
new file mode 100644
index 00000000..0d4541ea
--- /dev/null
+++ b/archive-2022.rss
@@ -0,0 +1,689 @@
+Playing around with Modal Labs
+One of the first things I tried was a regular cron job...
+@stub.function(
+ schedule=modal.Period(minutes=59), secret=modal.Secret.from_name("my-dummy-secret")
+)
+def say_hi():
+ now = time.ctime()
+ secret = os.environ.get("dummy-secret")
+ print(f"Hello {os.environ.get('USER', 'Rodney')} at {now}")
+ print(f"{secret=}")
+
+
+This can get deployed with modal deploy --name <app name> <path to .py file with the stub and function defined in it>
This function gets deployed as an app that I conveniently call say_hi
(as far
+as I can tell the app name can be anything - as I add functions to this same
+app and deploy with the same name to get a new version)
Notice that this also is an example of giving access to a secret - defined in the Modal Labs dashboard
+We can take a look at the apps running at https://modal.com/apps
+I then added another function to experiment with custom container images and
+saw then that Modal will just slap a new version on anything provisioned with
+the same name (intuitive enough for sure) so when I add functions to my .py
+script and run modal deploy --name say_hi myscript.py
over and over, the app
+called say_hi
in the Modal apps dashboard just gets a new version
This means I can spin up several instances of functionally the same app but with different names/versions etc... +Q: Maybe there's gitops or policy stuff builtin to app names then?
+I needed to take down an app I deployed as a duplicate but you don't stop apps +by name, you stop them by an id... see below
+
+modal-sandbox/modal_sandbox main ×1 ×9 via v3.10.6(modal-sandbox)
+✗ modal app stop --help
+
+ Usage: modal app stop [OPTIONS] APP_ID
+
+ Stop an app.
+
+╭─ Arguments ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
+│ * app_id TEXT [default: None] [required] │
+╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
+╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
+│ --help Show this message and exit. │
+╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
+
+
+modal-sandbox/modal_sandbox main ×1 ×9 via v3.10.6(modal-sandbox)
+❯ modal app list
+┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
+┃ App ID ┃ Description ┃ State ┃ Creation time ┃ Stop time ┃
+┡━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
+│ ap-lzy1AAuVy7POFkUcDKRxpQ │ print_info │ deployed │ 2022-12-28 20:59:07-06:00 │ │
+│ ap-qYjE45dciqgT3C3CpNp3RL │ say_hi │ deployed │ 2022-12-28 19:49:22-06:00 │ │
+│ ap-X7FYneUeYV5IKHcyirSb87 │ link-scraper │ stopped │ 2022-12-28 15:39:02-06:00 │ 2022-12-28 15:39:04-06:00 │
+│ ap-UOXTUU4uSRx2UZypJOcAsk │ example-get-started │ stopped │ 2022-12-28 15:17:47-06:00 │ 2022-12-28 15:17:49-06:00 │
+└───────────────────────────┴─────────────────────┴──────────┴───────────────────────────┴───────────────────────────┘
+
+modal-sandbox/modal_sandbox main ×1 ×9 via v3.10.6(modal-sandbox)
+❯ modal app stop ap-lzy1AAuVy7POFkUcDKRxpQ
+
+
+I ran modal deploy ...
after comitting some stuff I wanted to try BUT I had
+changes in my file I didn't want to deploy... some git safety would be nice for
+deployment!
++git stash && modal deploy .. && git stash pop
+
Question for Modal team - in my modal sandbox repo at commit:
+aab6162 (HEAD -> main) HEAD@{1}: commit: print base version of my own image to prove it to me
+ 1 file changed, 2 insertions(+)
+
+
+An environment variable, BASE_VERSION
that I expect to be in my base image
+was not available to the python function in my Modal app... hopefully the log
+is still
+here
ssh-copy-id -i my.key.pub <hostname probably from tailscale>
+this makes sure I can run ansible from my desktop against VMs on my server
+easily if they have tailscale for the hostname - otherwise use the IP
https://nicolasbouliane.com/blog/nextcloud-docker-upgrade-error
+ +]]>I have a bash script called syncoid-job
which boils down to a barebones -
#!/bin/bash
+
+syncoid --no-sync-snap --sendoptions=w --no-privilege-elevation $SYNOIC_USER@$SERVER:tank/encrypted/nas tank/encrypted/nas
+
+I want to run this script hourly but as my user (notice the no-privilege-elevation flag)
+First - create a systemd unit file at /etc/systemd/system/syncoid-replication.service
[Unit]
+Description=ZFS Replication With Syncoid
+
+[Service]
+Type=oneshot
+ExecStart=/$HOME/dotfiles/syncoid-job
+User=$USER
+Group=$GROUP
+
+[Install]
+WantedBy=multi-user.target
+
+
+Then we save the unit file, enable the service, and then start it
+systemctl enable syncoid-replication.service
+systemctl start syncoid-replication.service
+
+
+++Note this will run that script... so be ready for syncoid to do its thing
+
Now for the timer... We create /etc/systemd/system/syncoid-replication.timer
[Unit]
+Description=Run syncoid-replication every hour
+
+[Timer]
+OnCalendar=hourly
+
+[Install]
+WantedBy=timers.target
+
+
+Hit it with a systemctl enable syncoid-replication.timer
and you're in business!
in /lib/systemd/system/docker.service there is an ExecStart command that got placed there when I setup Docker with Ansible - it threw the -H flag which told the daemon what hosts to setup. But I added the "hosts" key in my daemon.json and it broke - so removing the -H flag from the systemd unit fixed it
+ +]]>I regularly need to edit system config files - take /etc/sanoid/sanoid.conf as
+an example... I'll want to play with something but if I don't start Neovim as
+root then I get in trouble making edits I can't save! So
+suda.vim gives me
+:SudaWrite
which let's me write that buffer with sudo privileges even though
+I'm Neovim is running with my login user!
I'm playing with my ansible playbook in a remote tmux session, and I'm no wiz
+so I don't know the ins and outs, but I can't scroll up to get any console log
+output that's not already visible on my screen. So I'm starting to end my
+commands with | less
so I can page through the console output!
ansible-playbook plays.yml -v --tags mytag | less
AJAX wasn't cutting it, traditional crontab in containers doesn't make much +sense to me, webcron is recommended but I don't want to register with anything +outside my LAN... Turns out you can just spin up an identical container with a +different entrypoint to /cron.sh that does what you need!
+++Note that this is a task in an Ansible playbook - but the docker-compose is straight forward
+
So the only thing you need to make sure of is that all the configuration +options - data volumes, user permissions, etc. are identical between the +containers running the cron job and the one actually hosting NextCloud. This +ensures that the container running cron has proper access to the database and +filesystem - or at least the same access as NextCloud proper.
+- name: Nextcloud Cron Docker Container
+ docker_container:
+ name: nextcloud-cron
+ image: "{{ nextcloud_image }}"
+ pull: true
+ links:
+ - nextcloud-mysql:mysql
+ entrypoint: /cron.sh
+ volumes:
+ - "{{ nextcloud_data_directory }}/nextcloud:/var/www/html:rw"
+ env:
+ MYSQL_HOST: "mysql"
+ MYSQL_DATABASE: "nextcloud"
+ MYSQL_USER: "{{ nextcloud_sql_user }}"
+ MYSQL_PASSWORD: "{{ nextcloud_sql_password }}"
+ NEXTCLOUD_TRUSTED_DOMAINS: "{{ nextcloud_hostname }}.{{ ansible_nas_domain }}"
+ PUID: "{{ nextcloud_user_id }}"
+ PGID: "{{ nextcloud_group_id }}"
+ TZ: "{{ ansible_nas_timezone }}"
+ restart_policy: unless-stopped
+ memory: "{{ nextcloud_memory }}"
+
+
+
+]]>I am trying to adopt logger.debug
instead of print
but ran into a confusing
+thing in ipython during Advent of Code... I riddled by script with
+logger.debug
(yes after setting logging.setLevel('DEBUG')
) but in ipython
+none of my log messages showed up!
import logging
+
+logger = logging.getLogger(__name__)
+logger.setLevel("DEBUG")
+
+
+Turns out what I was missing was a call to basicConfig
import logging
+
+# forget this and your messages are in the ether! or at least not seen in ipython...
+logging.basicConfig()
+
+logger = logging.getLogger(__name__)
+logger.setLevel("DEBUG")
+
+Want your new messages to show up while iterating on something without killing +the ipython kernel?
+from importlib import reload
+reload(logging) # to make sure you get new log messages you add while developing!
+
+
+
+]]>I wanted to break down some long lines in a Markdown table cell to make it look
+nicer on my blog but \n didn't do anything for me... turns out
is the
+magic sauce
Column 1 | +Column 2 | +
---|---|
Key | +Doggo ipsum many pats. Borkdrive borking doggo doing me a frighten doggorino, noodle horse heckin. what a nice floof. Pupper borking doggo you are doing me a frighten, much ruin diet. | +
--- | +--- | +
Column 1 | +Column 2 | +
---|---|
Key | +Doggo ipsum many pats. Borkdrive borking doggo doing me a frighten doggorino, noodle horse heckin. what a nice floof. Pupper borking doggo you are doing me a frighten, much ruin diet. |
+
--- | +--- | +
Switching to Vim opened a whole new world to me for interacting with a computer +and for getting things done. Before I adopted Vim I used GUIs for everything +because I thought that's how it had to be done... Notes in OneNote, code using +a GUI editor, different notes in TiddlyWiki, slides for work in PowerPoint, +slides for church using Logos, etc... Adopting Vim allowed me to disconnect a +specific tool from the problem that tool is solving - because usually I just +need to write text (notes, code, slides, etc.). Now, very nearly everything I +do is from a text-based and git-based workflow... I put all my notes on +basically anything just in my blog, which is all markdown and deployed to GH +with Markata on every push (living dangerously pushing to main) - and that's +all done easily from Vim with nice syntax highlighting, fast response, +integrated git-plugins, etc.. I keep project-specific task lists just in +markdown files and I have Vim/tmux shortcuts to quickly add todos for any +project (todo list is done with markata todoui) and I can get there fast +because my Vim workflow dovetails with Tmux nicely. Also I can pull that list +up right from the terminal, which I'm already in because Vim.... Vim also +pushed me into the cli more - because Vim is so easily extended with cli tools +and I'm already in the terminal... The builtin functionality also made things +make more sense - no more right-click, find "refactor all" or "rename symbol" +(for some stupid reason)... Vim find-replace is so intuitive and if I need it +extended then I learned what sed was because of Vim. Moving quickly in Vim also +enables me to do my job incredibly fast because I hop into several projects a +day in a coaching role - if I was bound by GUIs I'd be waiting forever for +startup, would lose which GUI instance was which project, etc... Being in the +terminal also made Tmux a trivial choice - now I have 90 tmux sessions, all +named appropriately, ready for me to jump back to and all while keeping the +majority of RAM still free for Chrome. Vim as my IDE also forced me to learn +way more about Python (I'm a python developer primarily), how LSP works, how to +configure a development environment, etc... things I took for granted in my GUI +workflows, or never knew, or worse - thought I knew but deeply misunderstood. +Now that I understand them better, I can coach my peers more effectively even +if they are still in a GUI-based ecosystem.
+Basically, (Neo)Vim actually did change my life and I'm really thankful for it +(maybe that should be the title?)
+ +]]>mkdir s{1..10} will make directories s1, s2, ... s10 in one command!
+ +]]>Class link +Classroom notes (Must be on home network)
+This class is not so much a survey of the HB, it is Tim's attempt to distil the +most helpful things for understanding it in a consumable way for laypeople.
+A chunk of this is the other people giving some of their own background. One +lady said something that might be helpful for ministry - "Maybe that thing that +I saw as 'you don't love me' is 'I don't know how to love you'"
+!!! note "how to love"
+Maybe that thing that I saw as 'you don't love me' is 'I don't know how to love you'
+
+!!! danger "Christian coping strategy for the Olt Testament"
+1. Hero-example model
+ * Stories get isolated and distilled down into a simple moral model, where the hero is just the hero.
+ * Veggie-Tales is uber-guilty of this nonsense
+ * There's something correct about this - but the oversimplification usually comes out of a massive re-writting of the stories, then anyone raised on those versions of the story is scaldalized when they read it for real
+
+2. Poltical-authority source
+ * Political parties hijacking "The Bible says X about Y" as a means to harvest authority from a book that many people claim is authoritative.
+
+3. Theology answer book model
+ * Treating the Bible like a dictionary of key/value pairs where keys are questions and values are simple answers.
+ * This ignores narrative, and general literacy.
+ * The instinct may be right - the Bible should profoundly shape my view of everything, but it isn't simple
+
+4. Inspirational-heart-warming model
+ * Verse-a-day calendars
+ * Jermiah 29:11
+
+!!! warning ""
+Are we imposing a set of questions that are foreign to what the authors are
+trying to communicate? do we need to set our cultural agendas aside to just
+listen?
+
+A result of asking the wrong questions is the common story of people's faith being dismantled by reading the Bible
+!!! note "DL Baker - Two Testaments - One Bible"
+One of the most fundamental questions which has faced theology and the
+Church in every age... is whether or not Christianity also needs an Old
+Testament. Is the Old Testament to be thrown away as obsolete, or pre-
+served as a relic from days of yore, or treasured as a classic and read by
+scholars, or used occasionally as a change from the New Testament, or
+kept in a box in case it should be needed some day? Or is the Old Testa-
+ment an essential part of the Christian Bible, with continuing validity along-
+side the New Testament? —
+
+The Bible most often refers to itself as the Writings
+!!! note "Road to Emmaus"
+Jesus confronts a couple guys walking to Emmaus after he is resurrected and
+more or less calls them idiots/fools for not understanding that the
+Writings point to an annointed king who will suffer death for the sake of
+redemption. He's recognized by them once their eyes are opened then he vanishes
+
+Weird stuff
+Paul assumes when writing to Timothy that he, and probably believers in general, are in a community of people who are regularly learning about Yahweh through the Scriptures as a family
+!!! scripture "2 Timothy 3:15-16"
+... and that from childhood you ahve known the sacred writings which are
+able to give you the wisdom that leas to salvation through faith which is
+in Christ Jesus. All Scripture is inspired by God and profitable for
+teaching, for reproof, for correction, for training in righteousness
+
+!!! success ""
+For Paul, the `Scriptures` here are our OT, the Hebrew Bible. For Paul, the HB
+is entirely _wisdom literature_ that leads to salvation through Jesus
+
+The question of "What are the Scriptures?" is covered in the next session
+To answer the question 'How do we read the HB?' we have to ask the question +'Whose book is the HB?'
+Old Testament
is the Christian term for a set of writings that comprise about
+3/4 of the Christian Bible. The authors themselves though refer to those
+writings as the Scriptures
. One time it is called the Old Covenant
by Paul
+, but he's talking about Synagogue readings of the Torah portion in synagogues.
+THe phrase Hebrew Bible
is a modern term that is a bit more neutral.
++So, what is our Bible?
+
!!! scripture "Luke 24:25-27"
+25 And he said to them, “O foolish ones, and slow of
+heart to believe all that the prophets have spoken! 26 Was it not necessary
+that the Christ should suffer these things and enter into his glory?”
+27 And beginning with Moses and all the Prophets, he interpreted to them in
+all the Scriptures the things concerning himself.
+
+++Moses and the Prophets
+
Jweish reference to the books in our OT, in the Hebrew Bible, but the arangement is different...
+!!! note "TaNaK"
+1. T = Torah (first 5 books)
+2. N - Nevi'im (Prophets: Joshua - Kings) [Christians often call these the 'historial books']
+3. K - Ketuvim
+
+| **Torah** | **Pentateuch** |
+| --- | --- |
+| Genesis - Exodus - Leviticus - Numbers Deuteronomy | Genesis - Exodus - Leviticus - Numbers - Deuteronomy |
+| **Nevi'im - The Prophets** | **History** |
+| *Former Prophets* <br/> Joshua - Judges - Samueal - Kings | Joshua - Judges - Ruth <br/> 1-2 Samuel - 1-2 Kings <br/> 1-2 Chronicles <br/> Ezra - Nehemiah - Ester |
+| *Later Prophets* <br/> Isaiah - Jeremiah - Ezekiel <br/> Hosea - Joel - Amos - Obadiah - Jonah - Micah - Nahum - Habakkuk - Zephaniah - Haggai - Zechariah - Malachi | **Poetry** <br/> Job - Psalms - Proverbs - Ecclesiastes - Song of Solomon |
+| **Kethuvim - The Writings** | **Prophets** |
+| Psalms - Job - Proverbs <br/> Ruth - Song of Songs - Ecclesiastes - Lamentations - Esther [The Megillot] <br/> Daniel - Ezra - Nehemiah - Chronicles | Isiah - Jeremiah - Lamentations <br/> Ezekiel - Daniel <br/> Hosea - Joel - Amos - Obadiah - Jonah - Micah - Nahum - Habakkuk - Zephaniah - Haggai - Zechariah - Malachi |
+
+!!! scripture "Luke 11:49–51 (ESV) "
+49 Therefore also the Wisdom of God said, ‘I will send them prophets and
+apostles, some of whom they will kill and persecute,’ 50 so that the blood
+of all the prophets, shed from the foundation of the world, may be charged
+against this generation, 51 from the blood of Abel to the blood of
+Zechariah, who perished between the altar and the sanctuary. Yes, I tell
+you, it will be required of this generation.
+
+++Blood of Abel to the blood of Zechariah...
+
Why would Jesus pick these two events? Abel is murdered on page 4, Zechariah is +murdered in the last part of Chronicles, which in the TaNaK is significant... +Jesus is saying that all the prophets from the beginning of the Scriptures to +the end... All the prophets from A-Z so to speak
+!!! note "Scriptures"
+"Books" as we know it, bound papers with writing on it, called a 'codex'
+wasn't a thing until a couple hundred years post-Jesus... so when the
+authors say "The Scriptures" we need to keep in mind that Jews had the
+scriptures in their minds and hearts, not on paper (save for a couple very
+expensive scrolls). So the structure of the scriptures is also apart of the
+Jewish being... This interaction with the Scriptures is _very very very
+different than how we interact with the Bible_
+
+!!! note "4QMMT"
+"The scrolls of Moses, the words of the prophets, and of David."
+
+!!! note "Philo of Alexandria"
+The laws and the oracles given by inspiration through the prophets and the
+Psalms, and the other scrolls whereby knowledge and piety are increased and
+completed...
+
+- De Vita Contemplatetiva, 25
+
+Around 100-200 AD there was a split in the Jewish community over things like +how the Temple and sacrifices were to be run, etc. A group got kicked out, so +they grabbed some scrolls and went to start what we'd think of as a Monastic +community. Qumran community is where they went, and the scrolls this group +managed are called the Dead Sea Scrolls.
+Out of DSS we have some of the oldest biblical scrolls, they have their own +writings and liturgies since they were all priests basically too.
+The scrolls were hidden in caves before the Romans marched on Qumran. They were +found in the 1940s by a bunch of shepherds. A few showed up online for sale and +that's how we found out about their exitence.... These scrolls give us +pre-Christian Jewish Bible nerds...
+Qumran community didn't know about Jesus - they thought the Messiah would be a +man called The Teacher of Righteousness
+The DSS preserved for us, not only ancient biblical texts, but also the method +by which scrolls were created. They were well-preserved papyrus that was +stiched together - literal stitches. We also have obvious additions from Qumran +community as well as notes from priests and corrections from missed +transcribing.
+The DSS scrolls, being the oldest stitched together set of scrolls, teach us +how scrolls and collections of ancient holy texts were put together. We need to +keep this in mind when we think about where our Christian Bible came from
+The beginning and ending of our books might/are filled with hyperlinks that +call a reader's mind back to other stories. It's the way of linking context and +stories to one another before the writings are in a codex
+++Hyperlinks - language/syntax that remind a reader of antoher scroll - help us +understand the structure of the Hebrew Bible
+
!!! note "A favorite quote from Tim"
+So, you can see I'm interested in a historical question of like the
+collection [Hebrew Bible] was produced by a group of people. What did they
+mean by it? And we can actually know a lot about what they meant and locate
+them and read it the way they wanted us to read it, and pick up what
+they're saying. And, lo and behold, you know, I hope to convince you
+that—and this is all pre-Christian—what's happening here and what this all
+points to and means, fits hand in glove with how Jesus and Paul and the
+apostles talk about these texts.
+So that's different from saying nobody
+knew what these texts meant. The events of Jesus happen, and then we go
+reread it, and it has a whole new meaning that no one has ever imagined. It
+seems to me what actually happened in history was a little more interesting
+and complicated than that. [17:30-18:21]
+
+
+]]>/mysearch\c will match mysearch, MYSEARCH, mYSeArCh...
+ +]]>!!! Exodusds 34:6
+Compassioante and gracious, slow to anger, overflowing with loyal love and faithfulness
+
+Faithfulness - Emet (can be translated 'Truth') +Related to "Amen" which is untranslated Hebrew expression meaning "that's truth"
+Moses has to hold his hands up when Israel faces the Amalekites. Joshua (and another) bring Moses a rock to sit on and hold is hands up so they could be Emet.
+Describs trustiworthiness
+Exodus 18:21 - Moses apoints leaders are to be "Emet"
+God is a rock - he is faithful, just, and upright
+Hebrew word for trust is He'Emin which is the verb form of Emet
+Abraham considers God Emet, he He'Emin's God and God blesses this by creating Isreal.
+Israel, In Exodus 14:31, He'Emin's God (until they see the gians in Canaan that is)
+1 Kings 1:6 says David walked in Emet with God
+2 Samuel 7:16, God blesses David and says his kingdom will have Emet
+Romans 15:8-9 says Jesus came on behalf of God's faithfulness.
+!!! note "1"
+The Hebrew word “emet” is translated with words like “faithful,”
+“reliable,” “sure,” “trustworthy,” and “amen.” Read aloud Psalm 36:5-6 ,
+Psalm 19:7 , and Psalm 41:13 and discuss what the psalmists are
+communicating in these passages when they use the word “emet.”
+
+!!! scripture "Psalms 36:5-6"
+5Your lovingkindness, O Lord, extends to the heavens,
+
+Your faithfulness reaches to the skies.
+
+6Your righteousness is like the mountains of God;
+
+Your judgments are like a great deep.
+
+O Lord, You preserve man and beast.
+
+!!! scripture "Psalms 19:7"
+7The law of the Lord is perfect, restoring the soul;
+
+The testimony of the Lord is sure, making wise the simple.
+
+!!! scripture "Psalms 41:13"
+13Blessed be the Lord, the God of Israel,
+
+From everlasting to everlasting.
+
+Amen and Amen.
+
+I think the lesson here is pretty simple - God is faithful, full stop. His +faithfulness doesn't look necessarily like how we might want... when I was a +kid I would be upset if my parents didn't respond to me in the way I wanted, +and my kids will certainly share that disappointment. But I am faithful to my +children - sometimes the main issue is a child's outlook on a situation or +worldview. I think that metaphor holds true in relation to humans and Yahweh - +he sees the whole world, we see a part of it so we cannot understand +faithfulness fully, in the same way that my children can't understand my +faithfulness to them fully - even to the point of being upset or thinking that +I'm not being faithful
+!!! note "2"
+God promised the Israelites that he would give them a king of peace that
+would rule forever and ever (e.g. 2 Samuel 7:16). However, Israel’s kingdom
+collapsed and they found themselves without a home or a king. Compare the
+beginning of Psalm 89 (vv. 1-10) with the way it closes (vv. 46-52). What
+do you think it practically looks like to trust God when all seems lost?
+
+!!! scripture "2 Samuel 7:16"
+16Your house and your kingdom shall endure before Me forever; your throne shall be established forever.” ’ ”
+
+!!! scripture "PSALM 89"
+The Lord’s Covenant with David, and Israel’s Afflictions.
+
+A Maskil of Ethan the Ezrahite.
+
+1I will sing of the lovingkindness of the Lord forever;
+
+To all generations I will make known Your faithfulness with my mouth.
+
+2For I have said, “Lovingkindness will be built up forever;
+
+In the heavens You will establish Your faithfulness.”
+
+3“I have made a covenant with My chosen;
+
+I have sworn to David My servant,
+
+4I will establish your seed forever
+
+And build up your throne to all generations.” Selah.
+
+5The heavens will praise Your wonders, O Lord;
+
+Your faithfulness also in the assembly of the holy ones.
+
+6For who in the skies is comparable to the Lord?
+
+Who among the sons of the mighty is like the Lord,
+
+7A God greatly feared in the council of the holy ones,
+
+And awesome above all those who are around Him?
+
+8O Lord God of hosts, who is like You, O mighty Lord?
+
+Your faithfulness also surrounds You.
+
+9You rule the swelling of the sea;
+
+!!! note "3"
+Ultimately, God answers the psalmist’s cries in the person of Jesus. Compare 2 Samuel 7:16
+2 Samuel 7:16
+
+16Your house and your kingdom shall endure before Me forever; your throne shall be established forever.” ’ ”
+
+to Hebrews 1:8-9
+Hebrews 1:8-9
+
+8But of the Son He says,
+
+“Your throne, O God, is forever and ever,
+
+And the righteous scepter is the scepter of His kingdom.
+
+9You have loved righteousness and hated lawlessness;
+
+Therefore God, Your God, has anointed You
+
+With the oil of gladness above Your companions.”
+
+. How does King Jesus embody and fulfill the ancient promises of God (e.g. John 1:14
+John 1:14
+
+The Word Made Flesh
+
+14And the Word became flesh, and dwelt among us, and we saw His glory, glory as of the only begotten from the Father, full of grace and truth.
+
+, Hebrews 3:5-6
+Hebrews 3:5-6
+
+5Now Moses was faithful in all His house as a servant, for a testimony of those things which were to be spoken later; 6but Christ was faithful as a Son over His house—whose house we are, if we hold fast our confidence and the boast of our hope firm until the end.
+
+, and Romans 15:8-9
+Romans 15:8-9
+
+8For I say that Christ has become a servant to the circumcision on behalf of the truth of God to confirm the promises given to the fathers, 9and for the Gentiles to glorify God for His mercy; as it is written,
+
+“Therefore I will give praise to You among the Gentiles,
+
+And I will sing to Your name.”
+
+)?
+
+!!! note "4"
+Read Hebrews 10:22-25
+Hebrews 10:22-25
+
+22let us draw near with a sincere heart in full assurance of faith, having our hearts sprinkled clean from an evil conscience and our bodies washed with pure water. 23Let us hold fast the confession of our hope without wavering, for He who promised is faithful; 24and let us consider how to stimulate one another to love and good deeds, 25not forsaking our own assembling together, as is the habit of some, but encouraging one another; and all the more as you see the day drawing near.
+
+, Hebrews 11
+Hebrews 11
+
+The Triumphs of Faith
+
+1Now faith is the assurance of things hoped for, the conviction of things not seen. 2For by it the men of old gained approval.
+
+3By faith we understand that the worlds were prepared by the word of God, so that what is seen was not made out of things which are visible. 4By faith Abel offered to God a better sacrifice than Cain, through which he obtained the testimony that he was righteous, God testifying about his gifts, and through faith, though he is dead, he still speaks. 5By faith Enoch was taken up so that he would not see death; and he was not found because God took him up; for he obtained the witness that before his being taken up he was pleasing to God. 6And without faith it is impossible to please Him, for he who comes to God must believe that He is and that He is a rewarder of those who seek Him. 7By faith Noah, being warned by God about things not yet seen, in reverence prepared an ark for the salvation of his household, by which he condemned the world, and became an heir of the righteousness which is according to faith.
+
+8By faith Abraham, when he was called, obeyed by going out to a place which he was to receive for an inheritance; and he went out, not knowing where he was going. 9By faith he lived as an alien in the land of promise, as in a foreign land, dwelling in tents with Isaac and Jacob, fellow heirs of the same promise; 10for he was looking for the city which has foundations, whose architect and builder is God. 11By faith even Sarah herself received ability to conceive, even beyond the proper time of life, since she considered Him faithful who had promised. 12Therefore there was born even of one man, and him as good as dead at that, as many descendants as the stars of heaven in number, and innumerable as the sand which is by the seashore.
+
+13All these died in faith, without receiving the promises, but having seen them and having welcomed them from a distance, and having confessed that they were strangers and exiles on the earth. 14For those who say such things make it clear that they are seeking a country of their own. 15And indeed if they had been thinking of that country from which they went out, they would have had opportunity to return. 16But as it is, they desire a better country, that is, a heavenly one. Therefore God is not ashamed to be called their God; for He has prepared a city for them.
+
+17By faith Abraham, when he was tested, offered up Isaac, and he who had received the promises was offering up his only begotten son; 18it was he to whom it was said, “In Isaac your descendants shall be called.” 19He considered that God is able to raise people even from the dead, from which he also received him back as a type. 20By faith Isaac blessed Jacob and Esau, even regarding things to come. 21By faith Jacob, as he was dying, blessed each of the sons of Joseph, and worshiped, leaning on the top of his staff. 22By faith Joseph, when he was dying, made mention of the exodus of the sons of Israel, and gave orders concerning his bones.
+
+23By faith Moses, when he was born, was hidden for three months by his parents, because they saw he was a beautiful child; and they were not afraid of the king’s edict. 24By faith Moses, when he had grown up, refused to be called the son of Pharaoh’s daughter, 25choosing rather to endure ill-treatment with the people of God than to enjoy the passing pleasures of sin, 26considering the reproach of Christ greater riches than the treasures of Egypt; for he was looking to the reward. 27By faith he left Egypt, not fearing the wrath of the king; for he endured, as seeing Him who is unseen. 28By faith he kept the Passover and the sprinkling of the blood, so that he who destroyed the firstborn would not touch them. 29By faith they passed through the Red Sea as though they were passing through dry land; and the Egyptians, when they attempted it, were drowned.
+
+30By faith the walls of Jericho fell down after they had been encircled for seven days. 31By faith Rahab the harlot did not perish along with those who were disobedient, after she had welcomed the spies in peace.
+
+32And what more shall I say? For time will fail me if I tell of Gideon, Barak, Samson, Jephthah, of David and Samuel and the prophets, 33who by faith conquered kingdoms, performed acts of righteousness, obtained promises, shut the mouths of lions, 34quenched the power of fire, escaped the edge of the sword, from weakness were made strong, became mighty in war, put foreign armies to flight. 35Women received back their dead by resurrection; and others were tortured, not accepting their release, so that they might obtain a better resurrection; 36and others experienced mockings and scourgings, yes, also chains and imprisonment. 37They were stoned, they were sawn in two, they were tempted, they were put to death with the sword; they went about in sheepskins, in goatskins, being destitute, afflicted, ill-treated 38(men of whom the world was not worthy), wandering in deserts and mountains and caves and holes in the ground.
+
+39And all these, having gained approval through their faith, did not receive what was promised, 40because God had provided something better for us, so that apart from us they would not be made perfect.
+
+, and Hebrews 12:1-3
+Hebrews 12:1-3
+
+Jesus, the Example
+
+1Therefore, since we have so great a cloud of witnesses surrounding us, let us also lay aside every encumbrance and the sin which so easily entangles us, and let us run with endurance the race that is set before us, 2fixing our eyes on Jesus, the author and perfecter of faith, who for the joy set before Him endured the cross, despising the shame, and has sat down at the right hand of the throne of God.
+
+3For consider Him who has endured such hostility by sinners against Himself, so that you will not grow weary and lose heart.
+
+. After reading these passages, name one example of what it looks like to put our trust in God.
+
+
+]]>+ + +I moved a computer to a remote location for an off-site backup but when it was powered on it wouldn't show up on any networks. A solution that got me back in was a friend restarting the dhcp client for me: +sudo dhclient -r -v <interface> & ... + read more → +
+ ++ + +Dragons are metaphorical images in the Bible +Goliath -> armor descriptions +Leviathan +Dragon slayers can be enticed to become dragons themselves +Jesus is the great dragon slayer, who doesn't give in to the inticing power of the dragon + +calming the ... + read more → +
+ ++ + +https://forum.opnsense.org/index.php?topic=8783.0 + + + read more → +
+ ++ + +Exec in as www-data and run ./occ groupfolders:scan folder_id -v (the -v to see what it's doing) + + + read more → +
+ ++ + +lsof | grep /tank/nas shows me what is using my nas at any time! + + + read more → +
+ ++ + +➜ pihole sudo zfs load-key -L file:///path/to/.zfs.tank.key tank/encrypted/vms/arch-sandbox +➜ pihole sudo zfs change-key -o keylocation=file:///path/to/.zfs.tank.key -o keyformat=raw tank/encrypted/vms/arch-sandbox +Need to load-key for each individu ... + read more → +
+ ++ + +I've been using paperless-ngx to manage all my documents, but every once in a while I'll get a .docx file to deal with... +Turns out Libreoffice has a headless mode a pdf converter built-in! +libreoffice --headless --convert-to pdf /path/to/file.docx ... + read more → +
+ ++ + +ChatGPT Prompt: +Stable Diffusion is an AI art generation model similar to DALLE-2. +Here are some prompts for generating art with Stable Diffusion. +Example: + +A ghostly apparition drifting through a haunted mansion's grand ballroom, illuminated by fli ... + read more → +
+ ++ + + +James +2023 study of the book of James +BP +The Guy +Greek: Iakobos (Jacob in English) +Jacob is one of Jesus' half-brothers who became a leader of the Jerusalem church post-resurrection +The book of James is the legacy of this Jacob's wisdom which was h ... + read more → +
+ ++ + +ffmpeg -i input.mp4 -map 0 -c:v libx264 -vf format=yuv420p -c:a copy output.mp4 + + + read more → +
+ ++ + +I was introduced to tiling window managers through i3, which I use heavily on +one of my machines. I have switched to Pop_OS! at home though, which has a +tiling window mode but the keybindings are not what I'm used to for i3. I +wanted to at least nav ... + read more → +
+ ++ + +I was getting (publickey denied) when trying to push to GH using ssh. When I +tested the connection I saw that a bunch of keys in ``~/.ssh/ were being +attempted +✗ ssh git@github.com -vv + +... + +debug1: Will attempt key: /home/nic/.ssh/id_rsa +debug1: W ... + read more → +
+ ++ + +I moved a computer to a remote location for an off-site backup but when it was powered on it wouldn't show up on any networks. A solution that got me back in was a friend restarting the dhcp client for me: +sudo dhclient -r -v <interface> & ... + read more → +
+ ++ + +Dragons are metaphorical images in the Bible +Goliath -> armor descriptions +Leviathan +Dragon slayers can be enticed to become dragons themselves +Jesus is the great dragon slayer, who doesn't give in to the inticing power of the dragon + +calming the ... + read more → +
+ ++ + +https://forum.opnsense.org/index.php?topic=8783.0 + + + read more → +
+ ++ + +Exec in as www-data and run ./occ groupfolders:scan folder_id -v (the -v to see what it's doing) + + + read more → +
+ ++ + +lsof | grep /tank/nas shows me what is using my nas at any time! + + + read more → +
+ ++ + +➜ pihole sudo zfs load-key -L file:///path/to/.zfs.tank.key tank/encrypted/vms/arch-sandbox +➜ pihole sudo zfs change-key -o keylocation=file:///path/to/.zfs.tank.key -o keyformat=raw tank/encrypted/vms/arch-sandbox +Need to load-key for each individu ... + read more → +
+ ++ + +I've been using paperless-ngx to manage all my documents, but every once in a while I'll get a .docx file to deal with... +Turns out Libreoffice has a headless mode a pdf converter built-in! +libreoffice --headless --convert-to pdf /path/to/file.docx ... + read more → +
+ ++ + +ChatGPT Prompt: +Stable Diffusion is an AI art generation model similar to DALLE-2. +Here are some prompts for generating art with Stable Diffusion. +Example: + +A ghostly apparition drifting through a haunted mansion's grand ballroom, illuminated by fli ... + read more → +
+ ++ + + +James +2023 study of the book of James +BP +The Guy +Greek: Iakobos (Jacob in English) +Jacob is one of Jesus' half-brothers who became a leader of the Jerusalem church post-resurrection +The book of James is the legacy of this Jacob's wisdom which was h ... + read more → +
+ ++ + +ffmpeg -i input.mp4 -map 0 -c:v libx264 -vf format=yuv420p -c:a copy output.mp4 + + + read more → +
+ +I moved a computer to a remote location for an off-site backup but when it was powered on it wouldn't show up on any networks. A solution that got me back in was a friend restarting the dhcp client for me:
\nsudo dhclient -r -v <interface> && sudo dhclient -v <interface>\n
\n\n",
+ "summary": "",
+ "date_published": "2023-12-31T20:26:50-00:00",
+ "image": "",
+ "authors": [
+ {
+ "name": "Nicholas Payne",
+ "url": "https://github.com/pypeaday",
+ "avatar": "https://github.com/pypeaday.png"
+ }
+ ],
+ "tags": [
+ "homelab",
+ "linux",
+ "tech"
+ ],
+ "language": "en"
+ },
+ {
+ "id": "https://pype.dev/chaos-dragon.html",
+ "url": "https://pype.dev/chaos-dragon.html",
+ "title": "Chaos Dragon",
+ "content_html": "\nDragons are metaphorical images in the Bible
\nGoliath -> armor descriptions\nLeviathan
\nDragon slayers can be enticed to become dragons themselves
\nJesus is the great dragon slayer, who doesn't give in to the inticing power of the dragon
\nJesus' victory came through the surrender of his life - which brings him deep\ninto the dragon's realm, to deliver the ultimate blow
\nReflect
\nIn the Bible, why is it challenging for humans to slay the dragon? What risks are involved?\nThe dragon's power is enticing... back to Genesis 3, humans are easy to persuade to do things for personal gain\nIt's challenging also becauset the dragon is powerful, and humans are not\n(without its power or the power of Jesus) so if we stand against it without\nthe Lord, what hope do we have of victory?
\nWhat are some of the ways that Jesus confronted the “dragon” in his ministry?
\nHow does Jesus ultimately defeat the “dragon”? How can we follow his example?
\nhttps://forum.opnsense.org/index.php?topic=8783.0
\n\n", + "summary": "", + "date_published": "2023-10-17T10:26:34-00:00", + "image": "", + "authors": [ + { + "name": "Nicholas Payne", + "url": "https://github.com/pypeaday", + "avatar": "https://github.com/pypeaday.png" + } + ], + "tags": [ + "homelab", + "homelab", + "tech" + ], + "language": "en" + }, + { + "id": "https://pype.dev/refresh-nextcloud-groupfolders-after-messing-around-on-the-filesystem.html", + "url": "https://pype.dev/refresh-nextcloud-groupfolders-after-messing-around-on-the-filesystem.html", + "title": "Refresh Nextcloud Groupfolders after messing around on the filesystem", + "content_html": "\nExec in as www-data and run ./occ groupfolders:scan folder_id -v (the -v to see what it's doing)
\n\n", + "summary": "", + "date_published": "2023-09-23T12:45:06-00:00", + "image": "", + "authors": [ + { + "name": "Nicholas Payne", + "url": "https://github.com/pypeaday", + "avatar": "https://github.com/pypeaday.png" + } + ], + "tags": [ + "homelab", + "linux", + "tech" + ], + "language": "en" + }, + { + "id": "https://pype.dev/lsof-to-find-what-s-using-your-filesystem.html", + "url": "https://pype.dev/lsof-to-find-what-s-using-your-filesystem.html", + "title": "lsof to find what's using your filesystem", + "content_html": "\nlsof | grep /tank/nas shows me what is using my nas at any time!
\n\n", + "summary": "", + "date_published": "2023-04-09T13:32:38-00:00", + "image": "", + "authors": [ + { + "name": "Nicholas Payne", + "url": "https://github.com/pypeaday", + "avatar": "https://github.com/pypeaday.png" + } + ], + "tags": [ + "zfs", + "homelab", + "tech" + ], + "language": "en" + }, + { + "id": "https://pype.dev/changing-zfs-key-for-child-datasets-of-encrypted-dataset-after-migration.html", + "url": "https://pype.dev/changing-zfs-key-for-child-datasets-of-encrypted-dataset-after-migration.html", + "title": "Changing ZFS key for child datasets of encrypted dataset after migration", + "content_html": "\n➜ pihole sudo zfs load-key -L file:///path/to/.zfs.tank.key tank/encrypted/vms/arch-sandbox\n➜ pihole sudo zfs change-key -o keylocation=file:///path/to/.zfs.tank.key -o keyformat=raw tank/encrypted/vms/arch-sandbox\nNeed to load-key for each individual dataset, then change key location to be a file instead of the prompt
\n\n", + "summary": "", + "date_published": "2023-04-08T20:12:22-00:00", + "image": "", + "authors": [ + { + "name": "Nicholas Payne", + "url": "https://github.com/pypeaday", + "avatar": "https://github.com/pypeaday.png" + } + ], + "tags": [ + "zfs", + "homelab", + "tech" + ], + "language": "en" + }, + { + "id": "https://pype.dev/convert-word-doc-to-pdf-with-headless-libreoffice.html", + "url": "https://pype.dev/convert-word-doc-to-pdf-with-headless-libreoffice.html", + "title": "Convert Word Doc to PDF with Headless Libreoffice", + "content_html": "\nI've been using paperless-ngx to manage all my documents, but every once in a while I'll get a .docx
file to deal with...
Turns out Libreoffice has a headless mode a pdf
converter built-in!
libreoffice --headless --convert-to pdf /path/to/file.docx --outdir /path/to/output/directory\n
\n\n\n\n", + "summary": "", + "date_published": "2023-03-09T06:48:38-00:00", + "image": "", + "authors": [ + { + "name": "Nicholas Payne", + "url": "https://github.com/pypeaday", + "avatar": "https://github.com/pypeaday.png" + } + ], + "tags": [ + "linux", + "cli", + "tech" + ], + "language": "en" + }, + { + "id": "https://pype.dev/stable-diffusion-notes.html", + "url": "https://pype.dev/stable-diffusion-notes.html", + "title": "Stable Diffusion Notes", + "content_html": "\nNote that
\n--outdir
is in fact a directory, not the path to a file
Stable Diffusion is an AI art generation model similar to DALLE-2.\nHere are some prompts for generating art with Stable Diffusion.
\nExample:
\nThe prompt should adhere to and include all of the following rules:
\nI want you to write me a list of detailed prompts exactly about the IDEA follow the rule at least 6 every time.
\nReady for my idea?
\nStable Diffusion is an AI art generation model similar to DALLE-2.\nHere are some pairs of positive and negative prompts for generating art with Stable Diffusion.
\nExample:
\nPositive: A (full body:1.3) shot at 8k resolution, splash art, fantastic comic book style, photorealistic, intense look, anatomical photorealistic digital painting portrait of a (old male:1.3) human (warrior:1.3) in black and gold intricate (heavy armor:1.3) in a (dark and moody universe:1.3), light particle, very detailed skin,samurai, very detailed eyes, (elden ring style:1.3), (warhammer style:1.1), concept artist, global illumination, depth of field, splash art, art by artgerm and greg rutkowski and viktoria gavrilenko\nNegative: (symmetry:1.2), facial marking, crown, horn, (helmet:1.3), (hoodie:1.1), clock, Female, visible hand, asian, two face, big hair, open mouth, cartoon, high contrast, poorly drawn, Scribbles, Low quality, Low rated, Mediocre, Screenshot, Software, UI, watermark, text, overlay, getty images, cropped, low quality
\nPositive: close-up head, facing camera, beautiful satanic female necromancer blood queen, ritualistic (neck tattoo:1.3), (insanely detailed:1.5), ((solo)), (highest quality, Alessandro Casagrande, Greg Rutkowski, Sally Mann, concept art, 4k), (colourful), (high sharpness), ((detailed pupils)), ((painting:1.1)), (digital painting:1.1), detailed face and eyes,Masterpiece, best quality, highly detailed photo:1, 8k, detailed face,photorealistic, (black long Hair:1.1),(young woman),By jeremy mann, by sandra chevrier, by maciej kuciara, smoke and shadow, night, sharp, ((perfect body)), realistic, real shadow, 3d, ((full body)), ((dark and gloomy universe)), (by Michelangelo)\nNegative: crown, (facial marking:1.2), cloth gem, jewel, jewelry, (flower:1.3), (cloak:1.1), (bad art, low detail, pencil drawing, old, mature:1.6), (grainy, low quality, mutated hands and fingers:1.5), (watermark, thin lines:1.3), (deformed, signature:1.2), (big nipples, blurry, ugly, bad anatomy, extra limbs, undersaturated, low resolution), disfigured, deformations, out of frame, amputee, bad proportions, extra limb, missing limbs, distortion, floating limbs, out of frame, poorly drawn face, poorly drawn hands, text, malformed, error, missing fingers, cropped, jpeg artifacts, teeth, unsharp
\nPositive: (Painting:1.3) of (Detailed illustration:1.3) A (full body:1.3) shot at 8k resolution, splash art, fantastic comic book style, photorealistic, intense look, anatomical photorealistic digital painting portrait of a (old male:1.3) human (warrior:1.3) in black and gold intricate (heavy armor:1.3) in a (dark and moody universe:1.3), light particle, very detailed skin,samurai, very detailed eyes, (elden ring style:1.3), (warhammer style:1.1), concept artist, global illumination, depth of field, splash art, art by artgerm and greg rutkowski and viktoria gavrilenko\nNegative: (symmetry:1.2), facial marking, crown, (horn:1.1), (helmet:1.3), (hoodie:1.1), clock, Female, visible hand, asian, two face, big hair, open mouth, cartoon, high contrast, poorly drawn, Scribbles, Low quality, Low rated, Mediocre, Screenshot, Software, UI, watermark, text, overlay, getty images, cropped, low qualityLow quality,Bad composition,Faded,(Photo:1.5),(Frame:1.3),watermark,signa ture
\nPositive: sci-fi, space rogue thief girl, (smirk:1.1), short hair, black hood, light armor, big grey eyes, beautiful detailed eyes, drawn by Greg Rutkowski, Yoji Shinkawa:0.6\nNegative: open mouth, facial marking, flower, bad-hands-5, lipstick, text, watermark
\nThe prompt should adhere to and include all of the following rules:
\nI want you to write me a list of detailed prompts exactly about the IDEA follow the rule at least 6 every time.
\nReady for my idea?
\nIDEA: A slice of pie that is filled with a futuristic city
\nI tend to like cfg at least on the higher end
\nAngel of death, shadows and mist, skelletol feathered wings, highly detailed, amazing details, intriciate lines, purple haze, styles Yuumei and Krenz Cushart, UHD, HDR, upscale, 8K photo, concept art
\npositive: unicorn, lora:Unicorns:0.9, portrait, professional photography, 35mm, highly detailed, incredibly realistic, best quality, high quality, highres, purple, lora:mossbeast:0.3
\nnegative: (two tails:1.2),FastNegativeV2,(bad-artist:1.0), (loli:1.2), (worst quality, low quality:1.4), (bad_prompt_version2:0.8), bad-hands-5,lowres, bad anatomy, bad hands, ((text)), (watermark), error, missing fingers, extra digit, fewer digits, cropped, worst quality, low quality, normal quality, ((username)), blurry, (extra limbs), bad-artist-anime, badhandv4, EasyNegative, ng_deepnegative_v1_75t, verybadimagenegative_v1.3, BadDream,(three hands:1.1),(three legs:1.1),(more than two hands:1.4),(more than two legs,:1.2),
\n\n", + "summary": "", + "date_published": "2023-01-28T14:15:11-00:00", + "image": "", + "authors": [ + { + "name": "Nicholas Payne", + "url": "https://github.com/pypeaday", + "avatar": "https://github.com/pypeaday.png" + } + ], + "tags": [ + "homelab", + "data", + "tech" + ], + "language": "en" + }, + { + "id": "https://pype.dev/olivet-mens-group-james-2023.html", + "url": "https://pype.dev/olivet-mens-group-james-2023.html", + "title": "olivet-mens-group-james-2023", + "content_html": "\n\n2023 study of the book of James
\nGreek: Iakobos (Jacob in English)
\nJacob is one of Jesus' half-brothers who became a leader of the Jerusalem church post-resurrection
\nThe book of James is the legacy of this Jacob's wisdom which was heavily influenced by two things:
\nThese are short challenging wisdom speeches full of metaphors and one-liners... Live in a wise way, submitting to Jesus
\nChapters 2-5 teach about wholehearted devotion to Jesus - there are 12 teachings total
\nsection | \nsummary | \nsource | \n
---|---|---|
2:1-13 | \nfavoritism vs love | \n(Matthew 5:46-48) | \n
2:14-26 | \ngenuine faith | \n(Matthew 7:21-27) | \n
\n | teaching about words | \n\n |
3:1-12 | \nthe tongue | \n(Luke 6:43-45) | \n
4:11-12 fm condeming others | \n(matthew 12:36-37) | \n\n |
5:12 | \ntelling the truth | \n(Matthew 5:37) | \n
\n | wealth | \n\n |
4:13-17 | \narrogance of wealth | \n(Matthew 6:28-34) | \n
5:1-6 | \ndanger of wealth | \n(Matthew 6:19-21) | \n
5:7-11 | \npeace and endurance | \n(Matthew 24:13) | \n
5:13-18 | \nfaith-filled prayer | \n(Mathew 21:21-22) | \n
\n\nOther 4 are in the poster about James on BP
\n
Chapter 1 the introduction
\n2-4: life's trials produce endurance and can make us perfect and complete
\nperect is repeated 7 times in the book - it refers to "wholeness" and integrity.
\nWe are all fractrued and inconsistent people
\nperfect: Hebrew: Tamim, Greek: Teleios
\n5-8: God gives wisdom to those who ask in faith
\n9-11: povety can force us tot rust on God alone; wealth will pass away
\n12-18: God is generous and gives us new birth through Jesus
\n19-27: Don't just listen to God's word but do it. It's the Torah of Freedom
\n!!! scripture "James 1:1"
\nJames, a servant of God and of the Lord Jesus Christ, To the twelve tribes in the Dispersion: Greetings.\n
\nDispersion: διασπορά - same word used by Peter to describe Jesus-followers as exiles
\n!!! scripture "James 1:2-11"
\n2 Count it all joy, my brothers, when you meet trials of various kinds,\n3 for you know that the testing of your faith produces steadfastness. 4 And\nlet steadfastness have its full effect, that you may be perfect and\ncomplete, lacking in nothing. 5 If any of you lacks wisdom, let him ask\nGod, who gives generously to all without reproach, and it will be given\nhim. 6 But let him ask in faith, with no doubting, for the one who doubts\nis like a wave of the sea that is driven and tossed by the wind. 7 For that\nperson must not suppose that he will receive anything from the Lord; 8 he\nis a double-minded man, unstable in all his ways. 9 Let the lowly brother\nboast in his exaltation, 10 and the rich in his humiliation, because like a\nflower of the grass he will pass away. 11 For the sun rises with its\nscorching heat and withers the grass; its flower falls, and its beauty\nperishes. So also will the rich man fade away in the midst of his pursuits.\n
\n\n\nMissed several meetings due to unfortunate travel circumstances
\n
!!! scripture "James 3:13-18"
\n13 Who is wise and understanding among you? By his good conduct let him\nshow his works in the meekness of wisdom. 14 But if you have bitter jealousy\nand selfish ambition in your hearts, do not boast and be false to the truth.\n15 This is not the wisdom that comes down from above, but is earthly,\nunspiritual, demonic. 16 For where jealousy and selfish ambition exist, there\nwill be disorder and every vile practice. 17 But the wisdom from above is first\npure, then peaceable, gentle, open to reason, full of mercy and good fruits,\nimpartial and sincere. 18 And a harvest of righteousness is sown in peace by\nthose who make peace.\n\nThe Holy Bible: English Standard Version (Jas 3:13–18). (2016). Crossway\nBibles.\n
\n!!! scripture "James 5:13-20"
\n13 Is anyone among you suffering misfortune? He should pray. Is anyone\ncheerful? He should sing praise. 14 Is anyone among you sick? He should\nsummon the elders of the church and they should pray over him, anointing\nhim with olive oil in the name of the Lord. 15 And the prayer of faith will\nsave the one who is sick, and the Lord will raise him up, and if he has\ncommitted sins ⌊he will be forgiven⌋. 16 Therefore confess your sins to one\nanother, and pray for one another, so that you may be healed. The effective\nprayer of a righteous person accomplishes much. 17 Elijah was a human being\nwith the same nature as us, and ⌊he prayed fervently⌋ for it not to rain,\nand it did not rain on the land for three years and six months. 18 And he\nprayed again, and the sky gave rain and the earth produced its fruit.\n19 My brothers, if anyone among you should wander away from the truth and\nsomeone turns him back, 20 he should know that the one who turns a sinner\nback from the error of his way will save that person’s soul from death, and\nwill cover over a great number of sins.\n
\nJames ends his letter with prayer because it's an exhortation of the Disapora\nand a life of faith must revolve around prayer
\nFor myself I think I pray in all circumstances, sickness, confession all ok. I\ndo not pray for long periods of time, and don't feel very disiplined, but\nwhenever anything happens, by the Lord's grace I am quick to turn my\nattention to Jesus, and hopefully turn the attention of my wife/kids to Jesus\nas well. Example: a person collapsed at the water park we went to this last\nweekend, Athalia and I were close-ish to that happening, so I told her we\nneeded to stop what we were doing and pray that Jesus would intervene.
\nI confess sin to Jesus but I'm not sure what that should look like. I've\ntaken a Brother Lawrence approach to try and quickly confess and move on,\naccepting grace, but I struggle with intentional sinning in this area... What\nis prayer if I knew what I was doing was wrong?
\nI am not more inclined to pray for suffering, but I think that's because I've\nvery consciously been trying to pray in good circumstances more often because\nwhen we only pray in suffering that turns prayer into a Santa's wish list\nsituation I think... yes we need the Lord in suffering, but we display our need\nfor him NOT only in suffering, and if that is true then it begs the question,\nto me anyways, of whether or not the need is truly there
\nI disagree with the dude's quote about the requirement of prayer, but only\nbecause the message is given in a direction that makes prayer look like\nsomething I have to do to get/keep/maintain my salvation... Yahweh changes his\nchildren's hearts and orients them towards him through prayer - if someone\ndoesn't then I think that just means Yahweh has not worked or has not chosen\nthem, but them calling themselves a Christian is irrelevant, and no amount of\nforcing themselves to pray will change Yahweh's will.
\n!!! scripture "Isaiah 1:6"
\nFrom the sole of the foot and up to the head\nthere is no health in it;\nbruise and sore and bleeding wound have not been cleansed,\nand they have not been bound up\nand not softened with the oil.\n
\n!!! scripture "Psalm 23:5"
\n5 You prepare before me a table\nin the presence of my oppressors.\nYou anoint my head with oil;\nmy cup is overflowing.\n
\n!!! scripture "1 Kings 17:1-16"
\n17 Elijah the Tishbite from Tishbe of Gilead said to Ahab, “⌊As Yahweh\nlives⌋, the God of Israel before whom I stand, there shall surely not be\ndew nor rain these years ⌊except by my command⌋.” 2 Then the word of Yahweh\ncame to him, saying, 3 “Go from this place and turn to the east; you must\nhide yourself in the Wadi Kerith ⌊which faces the Jordan⌋. 4 It shall be\nthat you shall drink from the wadi, and I have commanded the crows to\nsustain you there.” 5 So he went and did according to the word of Yahweh.\nHe went and stayed in the Wadi Kerith ⌊which faces the Jordan⌋. 6 The crows\nwere bringing bread and meat in the morning for him and bread and meat in\nthe evening, and he drank from the wadi. 7 It happened ⌊after a while⌋ that\nthe wadi dried up, because there was no rain in the land.\n\n8 Then the\nword of Yahweh came to him, saying, 9 “Get up and go to Zarephath which\nbelongs to Sidon and stay there. Look, I have commanded a woman there, a\nwidow, to sustain you.” 10 So he arose and went to Zarephath and came to\nthe gate of the city. There was a widow woman gathering wood, so he called\nto her, and he said, “Please bring a little water for me in a vessel so\nthat I can drink.” 11 She went to fetch it, and he called to her and said,\n“Please bring me a morsel of bread in your hand.” 12 She said, “⌊As Yahweh\nyour God lives⌋, surely I do not have a cake, ⌊but only a handful of flour⌋\nin the jar and a little olive oil in the jug. Here I am gathering a few\npieces of wood, and I will go and prepare it for me and my son, that we\nmight eat it and die.” 13 Elijah said to her, “Don’t be afraid. Go and do\naccording to your word; only make for me a small bread cake from it first,\nand bring it out to me. Make it for yourself and for your son afterward.\n14 For thus says Yahweh, the God of Israel: ‘The jar of flour will not be\nemptied and the jug of olive oil will not run out until the day Yahweh\ngives rain on the surface of the earth.’ ” 15 So she went and did according\nto the word of Elijah; then both she and he ate with her household for many\ndays. 16 The jar of flour was not emptied and the jug of olive oil did not\nrun out, according to the word of Yahweh which he spoke by the hand of\nElijah.\n
\n\n",
+ "summary": "",
+ "date_published": "2023-01-21T06:06:31-00:00",
+ "image": "",
+ "authors": [
+ {
+ "name": "Nicholas Payne",
+ "url": "https://github.com/pypeaday",
+ "avatar": "https://github.com/pypeaday.png"
+ }
+ ],
+ "tags": [
+ "olivet",
+ "faith"
+ ],
+ "language": "en"
+ },
+ {
+ "id": "https://pype.dev/ffmpeg-10-bit-videos-to-8-bit.html",
+ "url": "https://pype.dev/ffmpeg-10-bit-videos-to-8-bit.html",
+ "title": "FFMPEG 10-bit videos to 8-bit",
+ "content_html": "\nffmpeg -i input.mp4 -map 0 -c:v libx264 -vf format=yuv420p -c:a copy output.mp4
I was introduced to tiling window managers through i3, which I use heavily on\none of my machines. I have switched to Pop_OS! at home though, which has a\ntiling window mode but the keybindings are not what I'm used to for i3. I\nwanted to at least navigate workspaces how I'm used to doing (cause I set\nworkspace 3 for communication apps, 1 for my terminal, etc...)
\nHere's how I set keybindings for:
\n<Super> + <number>
sends me to that numbered workspace<Shift> + <Super> + <number>
moves the window I'm focused on to workspace number
#!/bin/bash\ngsettings set org.gnome.mutter dynamic-workspaces false \ngsettings set org.gnome.desktop.wm.preferences num-workspaces 8 \ngsettings set org.gnome.shell.keybindings switch-to-application-1 [] \ngsettings set org.gnome.shell.keybindings switch-to-application-2 [] \ngsettings set org.gnome.shell.keybindings switch-to-application-3 [] \ngsettings set org.gnome.shell.keybindings switch-to-application-4 [] \ngsettings set org.gnome.shell.keybindings switch-to-application-5 [] \ngsettings set org.gnome.shell.keybindings switch-to-application-6 [] \ngsettings set org.gnome.shell.keybindings switch-to-application-7 [] \ngsettings set org.gnome.shell.keybindings switch-to-application-8 [] \ngsettings set org.gnome.shell.keybindings switch-to-application-9 [] \ngsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-1 "['<Super>1']" \ngsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-2 "['<Super>2']" \ngsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-3 "['<Super>3']" \ngsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-4 "['<Super>4']" \ngsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-5 "['<Super>5']" \ngsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-6 "['<Super>6']" \ngsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-7 "['<Super>7']" \ngsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-8 "['<Super>8']" \ngsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-9 "['<Super>9']" \ngsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-10 "['<Super>0']" \ngsettings set org.gnome.desktop.wm.keybindings move-to-workspace-1 "['<Super><Shift>1']" \ngsettings set org.gnome.desktop.wm.keybindings move-to-workspace-2 "['<Super><Shift>2']" \ngsettings set org.gnome.desktop.wm.keybindings move-to-workspace-3 "['<Super><Shift>3']" \ngsettings set org.gnome.desktop.wm.keybindings move-to-workspace-4 "['<Super><Shift>4']" \ngsettings set org.gnome.desktop.wm.keybindings move-to-workspace-5 "['<Super><Shift>5']" \ngsettings set org.gnome.desktop.wm.keybindings move-to-workspace-6 "['<Super><Shift>6']" \ngsettings set org.gnome.desktop.wm.keybindings move-to-workspace-7 "['<Super><Shift>7']" \ngsettings set org.gnome.desktop.wm.keybindings move-to-workspace-8 "['<Super><Shift>8']" \ngsettings set org.gnome.desktop.wm.keybindings move-to-workspace-9 "['<Super><Shift>9']" \ngsettings set org.gnome.desktop.wm.keybindings move-to-workspace-10 "['<Super><Shift>0']"\n
\n\n",
+ "summary": "",
+ "date_published": "2023-01-12T05:51:25-00:00",
+ "image": "",
+ "authors": [
+ {
+ "name": "Nicholas Payne",
+ "url": "https://github.com/pypeaday",
+ "avatar": "https://github.com/pypeaday.png"
+ }
+ ],
+ "tags": [
+ "linux",
+ "linux",
+ "tech"
+ ],
+ "language": "en"
+ },
+ {
+ "id": "https://pype.dev/use-non-standard-named-ssh-keys-with-github.html",
+ "url": "https://pype.dev/use-non-standard-named-ssh-keys-with-github.html",
+ "title": "Use non-standard named ssh keys with github",
+ "content_html": "\nI was getting (publickey denied)
when trying to push to GH using ssh. When I\ntested the connection I saw that a bunch of keys in ``~/.ssh/ were being\nattempted
✗ ssh git@github.com -vv\n\n...\n\ndebug1: Will attempt key: /home/nic/.ssh/id_rsa \ndebug1: Will attempt key: /home/nic/.ssh/id_ecdsa \ndebug1: Will attempt key: /home/nic/.ssh/id_ecdsa_sk \ndebug1: Will attempt key: /home/nic/.ssh/id_ed25519 \ndebug1: Will attempt key: /home/nic/.ssh/id_ed25519_sk \ndebug1: Will attempt key: /home/nic/.ssh/id_xmss \ndebug1: Will attempt key: /home/nic/.ssh/id_dsa \n\n...\n\ndebug1: No more authentication methods to try.\ngit@github.com: Permission denied (publickey).\n\n
\nNone of those were the key I setup with GH. So I added an entry\ninto ~/.ssh/config
:
Host\ngithub.com\nUser git\nPort 22\nHostname github.com\nIdentityFile ~/.ssh/my_custom_github_key\nTCPKeepAlive yes\nIdentitiesOnly yes \n\n
\n\n",
+ "summary": "",
+ "date_published": "2023-01-03T08:34:50-00:00",
+ "image": "",
+ "authors": [
+ {
+ "name": "Nicholas Payne",
+ "url": "https://github.com/pypeaday",
+ "avatar": "https://github.com/pypeaday.png"
+ }
+ ],
+ "tags": [
+ "linux",
+ "cli",
+ "tech"
+ ],
+ "language": "en"
+ }
+ ]
+}
\ No newline at end of file
diff --git a/archive-2023.rss b/archive-2023.rss
new file mode 100644
index 00000000..25d2c962
--- /dev/null
+++ b/archive-2023.rss
@@ -0,0 +1,499 @@
+I moved a computer to a remote location for an off-site backup but when it was powered on it wouldn't show up on any networks. A solution that got me back in was a friend restarting the dhcp client for me:
+sudo dhclient -r -v <interface> && sudo dhclient -v <interface>
+
+
+]]>Dragons are metaphorical images in the Bible
+Goliath -> armor descriptions +Leviathan
+Dragon slayers can be enticed to become dragons themselves
+Jesus is the great dragon slayer, who doesn't give in to the inticing power of the dragon
+Jesus' victory came through the surrender of his life - which brings him deep +into the dragon's realm, to deliver the ultimate blow
+Reflect
+In the Bible, why is it challenging for humans to slay the dragon? What risks are involved? +The dragon's power is enticing... back to Genesis 3, humans are easy to persuade to do things for personal gain +It's challenging also becauset the dragon is powerful, and humans are not +(without its power or the power of Jesus) so if we stand against it without +the Lord, what hope do we have of victory?
+What are some of the ways that Jesus confronted the “dragon” in his ministry?
+How does Jesus ultimately defeat the “dragon”? How can we follow his example?
+Exec in as www-data and run ./occ groupfolders:scan folder_id -v (the -v to see what it's doing)
+ +]]>lsof | grep /tank/nas shows me what is using my nas at any time!
+ +]]>➜ pihole sudo zfs load-key -L file:///path/to/.zfs.tank.key tank/encrypted/vms/arch-sandbox +➜ pihole sudo zfs change-key -o keylocation=file:///path/to/.zfs.tank.key -o keyformat=raw tank/encrypted/vms/arch-sandbox +Need to load-key for each individual dataset, then change key location to be a file instead of the prompt
+ +]]>I've been using paperless-ngx to manage all my documents, but every once in a while I'll get a .docx
file to deal with...
Turns out Libreoffice has a headless mode a pdf
converter built-in!
libreoffice --headless --convert-to pdf /path/to/file.docx --outdir /path/to/output/directory
+
+++ +]]>Note that
+--outdir
is in fact a directory, not the path to a file
Stable Diffusion is an AI art generation model similar to DALLE-2. +Here are some prompts for generating art with Stable Diffusion.
+Example:
+The prompt should adhere to and include all of the following rules:
+I want you to write me a list of detailed prompts exactly about the IDEA follow the rule at least 6 every time.
+Ready for my idea?
+Stable Diffusion is an AI art generation model similar to DALLE-2. +Here are some pairs of positive and negative prompts for generating art with Stable Diffusion.
+Example:
+Positive: A (full body:1.3) shot at 8k resolution, splash art, fantastic comic book style, photorealistic, intense look, anatomical photorealistic digital painting portrait of a (old male:1.3) human (warrior:1.3) in black and gold intricate (heavy armor:1.3) in a (dark and moody universe:1.3), light particle, very detailed skin,samurai, very detailed eyes, (elden ring style:1.3), (warhammer style:1.1), concept artist, global illumination, depth of field, splash art, art by artgerm and greg rutkowski and viktoria gavrilenko +Negative: (symmetry:1.2), facial marking, crown, horn, (helmet:1.3), (hoodie:1.1), clock, Female, visible hand, asian, two face, big hair, open mouth, cartoon, high contrast, poorly drawn, Scribbles, Low quality, Low rated, Mediocre, Screenshot, Software, UI, watermark, text, overlay, getty images, cropped, low quality
+Positive: close-up head, facing camera, beautiful satanic female necromancer blood queen, ritualistic (neck tattoo:1.3), (insanely detailed:1.5), ((solo)), (highest quality, Alessandro Casagrande, Greg Rutkowski, Sally Mann, concept art, 4k), (colourful), (high sharpness), ((detailed pupils)), ((painting:1.1)), (digital painting:1.1), detailed face and eyes,Masterpiece, best quality, highly detailed photo:1, 8k, detailed face,photorealistic, (black long Hair:1.1),(young woman),By jeremy mann, by sandra chevrier, by maciej kuciara, smoke and shadow, night, sharp, ((perfect body)), realistic, real shadow, 3d, ((full body)), ((dark and gloomy universe)), (by Michelangelo) +Negative: crown, (facial marking:1.2), cloth gem, jewel, jewelry, (flower:1.3), (cloak:1.1), (bad art, low detail, pencil drawing, old, mature:1.6), (grainy, low quality, mutated hands and fingers:1.5), (watermark, thin lines:1.3), (deformed, signature:1.2), (big nipples, blurry, ugly, bad anatomy, extra limbs, undersaturated, low resolution), disfigured, deformations, out of frame, amputee, bad proportions, extra limb, missing limbs, distortion, floating limbs, out of frame, poorly drawn face, poorly drawn hands, text, malformed, error, missing fingers, cropped, jpeg artifacts, teeth, unsharp
+Positive: (Painting:1.3) of (Detailed illustration:1.3) A (full body:1.3) shot at 8k resolution, splash art, fantastic comic book style, photorealistic, intense look, anatomical photorealistic digital painting portrait of a (old male:1.3) human (warrior:1.3) in black and gold intricate (heavy armor:1.3) in a (dark and moody universe:1.3), light particle, very detailed skin,samurai, very detailed eyes, (elden ring style:1.3), (warhammer style:1.1), concept artist, global illumination, depth of field, splash art, art by artgerm and greg rutkowski and viktoria gavrilenko +Negative: (symmetry:1.2), facial marking, crown, (horn:1.1), (helmet:1.3), (hoodie:1.1), clock, Female, visible hand, asian, two face, big hair, open mouth, cartoon, high contrast, poorly drawn, Scribbles, Low quality, Low rated, Mediocre, Screenshot, Software, UI, watermark, text, overlay, getty images, cropped, low qualityLow quality,Bad composition,Faded,(Photo:1.5),(Frame:1.3),watermark,signa ture
+Positive: sci-fi, space rogue thief girl, (smirk:1.1), short hair, black hood, light armor, big grey eyes, beautiful detailed eyes, drawn by Greg Rutkowski, Yoji Shinkawa:0.6 +Negative: open mouth, facial marking, flower, bad-hands-5, lipstick, text, watermark
+The prompt should adhere to and include all of the following rules:
+I want you to write me a list of detailed prompts exactly about the IDEA follow the rule at least 6 every time.
+Ready for my idea?
+IDEA: A slice of pie that is filled with a futuristic city
+I tend to like cfg at least on the higher end
+Angel of death, shadows and mist, skelletol feathered wings, highly detailed, amazing details, intriciate lines, purple haze, styles Yuumei and Krenz Cushart, UHD, HDR, upscale, 8K photo, concept art
+positive: unicorn, lora:Unicorns:0.9, portrait, professional photography, 35mm, highly detailed, incredibly realistic, best quality, high quality, highres, purple, lora:mossbeast:0.3
+negative: (two tails:1.2),FastNegativeV2,(bad-artist:1.0), (loli:1.2), (worst quality, low quality:1.4), (bad_prompt_version2:0.8), bad-hands-5,lowres, bad anatomy, bad hands, ((text)), (watermark), error, missing fingers, extra digit, fewer digits, cropped, worst quality, low quality, normal quality, ((username)), blurry, (extra limbs), bad-artist-anime, badhandv4, EasyNegative, ng_deepnegative_v1_75t, verybadimagenegative_v1.3, BadDream,(three hands:1.1),(three legs:1.1),(more than two hands:1.4),(more than two legs,:1.2),
+ +]]>2023 study of the book of James
+Greek: Iakobos (Jacob in English)
+Jacob is one of Jesus' half-brothers who became a leader of the Jerusalem church post-resurrection
+The book of James is the legacy of this Jacob's wisdom which was heavily influenced by two things:
+These are short challenging wisdom speeches full of metaphors and one-liners... Live in a wise way, submitting to Jesus
+Chapters 2-5 teach about wholehearted devotion to Jesus - there are 12 teachings total
+section | +summary | +source | +
---|---|---|
2:1-13 | +favoritism vs love | +(Matthew 5:46-48) | +
2:14-26 | +genuine faith | +(Matthew 7:21-27) | +
+ | teaching about words | ++ |
3:1-12 | +the tongue | +(Luke 6:43-45) | +
4:11-12 fm condeming others | +(matthew 12:36-37) | ++ |
5:12 | +telling the truth | +(Matthew 5:37) | +
+ | wealth | ++ |
4:13-17 | +arrogance of wealth | +(Matthew 6:28-34) | +
5:1-6 | +danger of wealth | +(Matthew 6:19-21) | +
5:7-11 | +peace and endurance | +(Matthew 24:13) | +
5:13-18 | +faith-filled prayer | +(Mathew 21:21-22) | +
++Other 4 are in the poster about James on BP
+
Chapter 1 the introduction
+2-4: life's trials produce endurance and can make us perfect and complete
+perect is repeated 7 times in the book - it refers to "wholeness" and integrity.
+We are all fractrued and inconsistent people
+perfect: Hebrew: Tamim, Greek: Teleios
+5-8: God gives wisdom to those who ask in faith
+9-11: povety can force us tot rust on God alone; wealth will pass away
+12-18: God is generous and gives us new birth through Jesus
+19-27: Don't just listen to God's word but do it. It's the Torah of Freedom
+!!! scripture "James 1:1"
+James, a servant of God and of the Lord Jesus Christ, To the twelve tribes in the Dispersion: Greetings.
+
+Dispersion: διασπορά - same word used by Peter to describe Jesus-followers as exiles
+!!! scripture "James 1:2-11"
+2 Count it all joy, my brothers, when you meet trials of various kinds,
+3 for you know that the testing of your faith produces steadfastness. 4 And
+let steadfastness have its full effect, that you may be perfect and
+complete, lacking in nothing. 5 If any of you lacks wisdom, let him ask
+God, who gives generously to all without reproach, and it will be given
+him. 6 But let him ask in faith, with no doubting, for the one who doubts
+is like a wave of the sea that is driven and tossed by the wind. 7 For that
+person must not suppose that he will receive anything from the Lord; 8 he
+is a double-minded man, unstable in all his ways. 9 Let the lowly brother
+boast in his exaltation, 10 and the rich in his humiliation, because like a
+flower of the grass he will pass away. 11 For the sun rises with its
+scorching heat and withers the grass; its flower falls, and its beauty
+perishes. So also will the rich man fade away in the midst of his pursuits.
+
+++Missed several meetings due to unfortunate travel circumstances
+
!!! scripture "James 3:13-18"
+13 Who is wise and understanding among you? By his good conduct let him
+show his works in the meekness of wisdom. 14 But if you have bitter jealousy
+and selfish ambition in your hearts, do not boast and be false to the truth.
+15 This is not the wisdom that comes down from above, but is earthly,
+unspiritual, demonic. 16 For where jealousy and selfish ambition exist, there
+will be disorder and every vile practice. 17 But the wisdom from above is first
+pure, then peaceable, gentle, open to reason, full of mercy and good fruits,
+impartial and sincere. 18 And a harvest of righteousness is sown in peace by
+those who make peace.
+
+The Holy Bible: English Standard Version (Jas 3:13–18). (2016). Crossway
+Bibles.
+
+!!! scripture "James 5:13-20"
+13 Is anyone among you suffering misfortune? He should pray. Is anyone
+cheerful? He should sing praise. 14 Is anyone among you sick? He should
+summon the elders of the church and they should pray over him, anointing
+him with olive oil in the name of the Lord. 15 And the prayer of faith will
+save the one who is sick, and the Lord will raise him up, and if he has
+committed sins ⌊he will be forgiven⌋. 16 Therefore confess your sins to one
+another, and pray for one another, so that you may be healed. The effective
+prayer of a righteous person accomplishes much. 17 Elijah was a human being
+with the same nature as us, and ⌊he prayed fervently⌋ for it not to rain,
+and it did not rain on the land for three years and six months. 18 And he
+prayed again, and the sky gave rain and the earth produced its fruit.
+19 My brothers, if anyone among you should wander away from the truth and
+someone turns him back, 20 he should know that the one who turns a sinner
+back from the error of his way will save that person’s soul from death, and
+will cover over a great number of sins.
+
+James ends his letter with prayer because it's an exhortation of the Disapora +and a life of faith must revolve around prayer
+For myself I think I pray in all circumstances, sickness, confession all ok. I +do not pray for long periods of time, and don't feel very disiplined, but +whenever anything happens, by the Lord's grace I am quick to turn my +attention to Jesus, and hopefully turn the attention of my wife/kids to Jesus +as well. Example: a person collapsed at the water park we went to this last +weekend, Athalia and I were close-ish to that happening, so I told her we +needed to stop what we were doing and pray that Jesus would intervene.
+I confess sin to Jesus but I'm not sure what that should look like. I've +taken a Brother Lawrence approach to try and quickly confess and move on, +accepting grace, but I struggle with intentional sinning in this area... What +is prayer if I knew what I was doing was wrong?
+I am not more inclined to pray for suffering, but I think that's because I've +very consciously been trying to pray in good circumstances more often because +when we only pray in suffering that turns prayer into a Santa's wish list +situation I think... yes we need the Lord in suffering, but we display our need +for him NOT only in suffering, and if that is true then it begs the question, +to me anyways, of whether or not the need is truly there
+I disagree with the dude's quote about the requirement of prayer, but only +because the message is given in a direction that makes prayer look like +something I have to do to get/keep/maintain my salvation... Yahweh changes his +children's hearts and orients them towards him through prayer - if someone +doesn't then I think that just means Yahweh has not worked or has not chosen +them, but them calling themselves a Christian is irrelevant, and no amount of +forcing themselves to pray will change Yahweh's will.
+!!! scripture "Isaiah 1:6"
+From the sole of the foot and up to the head
+there is no health in it;
+bruise and sore and bleeding wound have not been cleansed,
+and they have not been bound up
+and not softened with the oil.
+
+!!! scripture "Psalm 23:5"
+5 You prepare before me a table
+in the presence of my oppressors.
+You anoint my head with oil;
+my cup is overflowing.
+
+!!! scripture "1 Kings 17:1-16"
+17 Elijah the Tishbite from Tishbe of Gilead said to Ahab, “⌊As Yahweh
+lives⌋, the God of Israel before whom I stand, there shall surely not be
+dew nor rain these years ⌊except by my command⌋.” 2 Then the word of Yahweh
+came to him, saying, 3 “Go from this place and turn to the east; you must
+hide yourself in the Wadi Kerith ⌊which faces the Jordan⌋. 4 It shall be
+that you shall drink from the wadi, and I have commanded the crows to
+sustain you there.” 5 So he went and did according to the word of Yahweh.
+He went and stayed in the Wadi Kerith ⌊which faces the Jordan⌋. 6 The crows
+were bringing bread and meat in the morning for him and bread and meat in
+the evening, and he drank from the wadi. 7 It happened ⌊after a while⌋ that
+the wadi dried up, because there was no rain in the land.
+
+8 Then the
+word of Yahweh came to him, saying, 9 “Get up and go to Zarephath which
+belongs to Sidon and stay there. Look, I have commanded a woman there, a
+widow, to sustain you.” 10 So he arose and went to Zarephath and came to
+the gate of the city. There was a widow woman gathering wood, so he called
+to her, and he said, “Please bring a little water for me in a vessel so
+that I can drink.” 11 She went to fetch it, and he called to her and said,
+“Please bring me a morsel of bread in your hand.” 12 She said, “⌊As Yahweh
+your God lives⌋, surely I do not have a cake, ⌊but only a handful of flour⌋
+in the jar and a little olive oil in the jug. Here I am gathering a few
+pieces of wood, and I will go and prepare it for me and my son, that we
+might eat it and die.” 13 Elijah said to her, “Don’t be afraid. Go and do
+according to your word; only make for me a small bread cake from it first,
+and bring it out to me. Make it for yourself and for your son afterward.
+14 For thus says Yahweh, the God of Israel: ‘The jar of flour will not be
+emptied and the jug of olive oil will not run out until the day Yahweh
+gives rain on the surface of the earth.’ ” 15 So she went and did according
+to the word of Elijah; then both she and he ate with her household for many
+days. 16 The jar of flour was not emptied and the jug of olive oil did not
+run out, according to the word of Yahweh which he spoke by the hand of
+Elijah.
+
+
+]]>ffmpeg -i input.mp4 -map 0 -c:v libx264 -vf format=yuv420p -c:a copy output.mp4
I was introduced to tiling window managers through i3, which I use heavily on +one of my machines. I have switched to Pop_OS! at home though, which has a +tiling window mode but the keybindings are not what I'm used to for i3. I +wanted to at least navigate workspaces how I'm used to doing (cause I set +workspace 3 for communication apps, 1 for my terminal, etc...)
+Here's how I set keybindings for:
+<Super> + <number>
sends me to that numbered workspace<Shift> + <Super> + <number>
moves the window I'm focused on to workspace number
#!/bin/bash
+gsettings set org.gnome.mutter dynamic-workspaces false
+gsettings set org.gnome.desktop.wm.preferences num-workspaces 8
+gsettings set org.gnome.shell.keybindings switch-to-application-1 []
+gsettings set org.gnome.shell.keybindings switch-to-application-2 []
+gsettings set org.gnome.shell.keybindings switch-to-application-3 []
+gsettings set org.gnome.shell.keybindings switch-to-application-4 []
+gsettings set org.gnome.shell.keybindings switch-to-application-5 []
+gsettings set org.gnome.shell.keybindings switch-to-application-6 []
+gsettings set org.gnome.shell.keybindings switch-to-application-7 []
+gsettings set org.gnome.shell.keybindings switch-to-application-8 []
+gsettings set org.gnome.shell.keybindings switch-to-application-9 []
+gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-1 "['<Super>1']"
+gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-2 "['<Super>2']"
+gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-3 "['<Super>3']"
+gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-4 "['<Super>4']"
+gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-5 "['<Super>5']"
+gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-6 "['<Super>6']"
+gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-7 "['<Super>7']"
+gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-8 "['<Super>8']"
+gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-9 "['<Super>9']"
+gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-10 "['<Super>0']"
+gsettings set org.gnome.desktop.wm.keybindings move-to-workspace-1 "['<Super><Shift>1']"
+gsettings set org.gnome.desktop.wm.keybindings move-to-workspace-2 "['<Super><Shift>2']"
+gsettings set org.gnome.desktop.wm.keybindings move-to-workspace-3 "['<Super><Shift>3']"
+gsettings set org.gnome.desktop.wm.keybindings move-to-workspace-4 "['<Super><Shift>4']"
+gsettings set org.gnome.desktop.wm.keybindings move-to-workspace-5 "['<Super><Shift>5']"
+gsettings set org.gnome.desktop.wm.keybindings move-to-workspace-6 "['<Super><Shift>6']"
+gsettings set org.gnome.desktop.wm.keybindings move-to-workspace-7 "['<Super><Shift>7']"
+gsettings set org.gnome.desktop.wm.keybindings move-to-workspace-8 "['<Super><Shift>8']"
+gsettings set org.gnome.desktop.wm.keybindings move-to-workspace-9 "['<Super><Shift>9']"
+gsettings set org.gnome.desktop.wm.keybindings move-to-workspace-10 "['<Super><Shift>0']"
+
+
+]]>I was getting (publickey denied)
when trying to push to GH using ssh. When I
+tested the connection I saw that a bunch of keys in ``~/.ssh/ were being
+attempted
✗ ssh git@github.com -vv
+
+...
+
+debug1: Will attempt key: /home/nic/.ssh/id_rsa
+debug1: Will attempt key: /home/nic/.ssh/id_ecdsa
+debug1: Will attempt key: /home/nic/.ssh/id_ecdsa_sk
+debug1: Will attempt key: /home/nic/.ssh/id_ed25519
+debug1: Will attempt key: /home/nic/.ssh/id_ed25519_sk
+debug1: Will attempt key: /home/nic/.ssh/id_xmss
+debug1: Will attempt key: /home/nic/.ssh/id_dsa
+
+...
+
+debug1: No more authentication methods to try.
+git@github.com: Permission denied (publickey).
+
+
+None of those were the key I setup with GH. So I added an entry
+into ~/.ssh/config
:
Host
+github.com
+User git
+Port 22
+Hostname github.com
+IdentityFile ~/.ssh/my_custom_github_key
+TCPKeepAlive yes
+IdentitiesOnly yes
+
+
+
+]]>+ + +I use LSIO Jelyfin container for the easy addon they provide for AMD GPUs but I couldn't get trickplay to work with HWE... +There was almost NOTHING on the internet about the error, and all the threads were about BSD systems... +Thankfully someone pos ... + read more → +
+ ++ + +The Flood Story and Jesus +Jesus brings up the Flood story from Genesis just one time (in the recorded teachings we have). +First to set the scene, Jesus and his disciples are visiting the temple, and the disiples are kind of "ooo-ing" and & ... + read more → +
+ ++ + +The Flood Story in the Hebrew Bible +I'm slowly making my way through some Bible Project classes online because Tim +Mackie is a fantastic teacher and BP has done be a great service by opening +my eyes to the reality of the Biblical narrative and what ... + read more → +
+ ++ + +I am moving a hefty amount of data to a new ZFS pool due to some corruption and I want to avoid using zfs send/recv for this just to make sure I don't propagate any corrupted data to my new pool. +I've used rsync for simple things before but I needed ... + read more → +
+ ++ + +Htop +I recently have been having significant home server issues, and that's not the point of this - today I learned what D state is when looking at htop. +htop-d +Apparently this means "uninterruptable sleep" and it's a dev's nightmare... +Co ... + read more → +
+ ++ + +Scripture +Luke 2:14 (ESV): 14 “Glory to God in the highest, and on earth peace among those with whom he is pleased!” +Edification +There is a word we probably know - Shalom. It's the Hebrew word we translate often as "peace". But when I hear ... + read more → +
+ ++ + +hostnamectl is apparently a linux utility for easily changing your hostname in a variety of ways + +❯ hostnamectl --help +hostnamectl [OPTIONS...] COMMAND ... + +Query or change system hostname. + +Commands: + status Show current hostname s ... + read more → +
+ ++ + +There a lot of flood stories throughout the history of the world, and the Bible +is no different in this regard. God warns Noah of a de-creation event, whereby +he'll start over with humanity via Noah and his family. Noah survives the flood +by abiding ... + read more → +
+ ++ + +This is your first post! +Edit this content +edit on content/{date}-welcome.md +Add more content +create new markdown files in the content folder +use marmite --new to create new content +Customize your site +edit marmite.yaml to change site settings +edit ... + read more → +
+ ++ + +the Logos web app is DISGUSTINGY bright/white - enough to actually ruin your morning... +Thankfully there's an extension called stylus and some kind folks in the Logos community created a nice dark theme here. You simply install the extension, then g ... + read more → +
+ ++ + +Context +24 “Everyone then who hears these words of mine and does them will be like a wise man who built his house on the rock. 25 And the rain fell, and the floods came, and the winds blew and beat on that house, but it did not fall, because it had ... + read more → +
+ ++ + +I rebooted by server and DNS broke randomly. I have no idea if it was from a kernel update or what but that's the issue with Ubuntu I guess... +After much toil and none of the other options working for me (sorry to not have those documented here) thi ... + read more → +
+ ++ + +Plasma shits the bed a little too often on Fedora for me right now but I finally have a quick fix... + +sudo killall plasmashell + +kstart plasmashell + + + + + read more → +
+ ++ + +enabling DHCP WAN port (dhclient <iface>)- running the bootstrap script - sh /usr/local/sbin/opnsense-bootstrap + + + read more → +
+ ++ + +Matthew 7:12 +So then, everything you desire that people do to you, so also you do to them, for this is the Torah and the Prophets + +What do I desire that people "do to [me]"? + +Help if I need it - I want to live in a world where humans are h ... + read more → +
+ ++ + +I woke up to faulty internet and after some troubleshooting it turns out the +root zfs dataset that OPNSense boots from got corrupted... + +PRO-TIP - Auto backup your OPNSense config to Google Drive, git, or +nextcloud... But if you won't then at least ... + read more → +
+ ++ + +Passage +Why do you see the speck in the eye of your brother, but you don't perceive the +beam in your own eye? + +Or how can you say to your brother, "Allow me to take out the speck from your +eye," and look, the beam is in your eye! + +Hypocrit ... + read more → +
+ ++ + +This morning I finally felt some motivation for a short Bible Project video. The app is great (💯 would recommend) and gives me daily reminders that are unobtrusive. +The passage is Matthew 7:1-2 +Do not judge so tha tyou will not be judged. Because wi ... + read more → +
+ ++ + +Add from url?? +ADD http://example.com/cars.csv /tmp/cars.csv +Unpack automatically!? (.tar, .tar.gz, .tgz, .bz2, .tbz2, .txz, .zip) +ADD myapp.tar.gz /opt/myapp/ + + + read more → +
+ ++ + +COPY --chown=myuser:mygroup source-file target-file + + + read more → +
+ ++ + +I was using a fun LaTex-based project for managing my resume called AltaCV. I loved the customization and was familiar with Tek from school. However, I update my resume so infrequently that anytime I'd hop back to it I'd have to remember how to work ... + read more → +
+ ++ + +When connecting from my phone to jellyfin I'm seeing some interesting patterns. +Scenarios +Tailscale IP of phone is listed as local network to jellyfin +Wifi: off +Tailscale: on +Use exit node: on +LAN access: on +Jellyfin: LAN IP +Jellyfin sees 192.168.1. ... + read more → +
+ ++ + +https://forum.proxmox.com/threads/update-error-with-coral-tpu-drivers.136888/#post-608975 I lost TPU for frigate, this saved me ass + + + read more → +
+ ++ + +Jet Brains has to be specified 'JetBrainsMono Nerd Font Mono' + + + read more → +
+ ++ + +To customize k9s use the skins from catppuccin or the ones k9s supplies +OUT="${XDG_CONFIG_HOME:-$HOME/.config}/k9s/skins" +mkdir -p "$OUT" +curl -L https://github.com/catppuccin/k9s/archive/main.tar.gz | tar xz -C "$OUT" ... + read more → +
+ ++ + +TL;DR +I've been using kanboard as a self-hosted kanban board. It's keeping me focused on Digital Harbor when I'd rather be doing something less productive. +My TODOs +Here's the thing about my TODOs... they're everywhere. I've tried a crazy amount of ... + read more → +
+ ++ + +I started deploying a website to Cloudflare on a branch called pages. Similar to one of the GH Pages deployment patterns. But when my CI was pushing the branch I couldn't see it locally... +git fetch -a wasn't pulling any new branches, and git branch ... + read more → +
+ ++ + +git config --add --local core.sshCommand 'ssh -i <<<PATH_TO_SSH_KEY>>>' + + + read more → +
+ ++ + +Video +Sermon on the Mount +3 chapters filled with phrases that are very well-known in our culture +Phrases + +Love your neighbor as yourself +Do to others what you would have them do to you +You are the salt of the earth +You can’t serve both God and money ... + read more → +
+ ++ + +I use LSIO Jelyfin container for the easy addon they provide for AMD GPUs but I couldn't get trickplay to work with HWE... +There was almost NOTHING on the internet about the error, and all the threads were about BSD systems... +Thankfully someone pos ... + read more → +
+ ++ + +The Flood Story and Jesus +Jesus brings up the Flood story from Genesis just one time (in the recorded teachings we have). +First to set the scene, Jesus and his disciples are visiting the temple, and the disiples are kind of "ooo-ing" and & ... + read more → +
+ ++ + +The Flood Story in the Hebrew Bible +I'm slowly making my way through some Bible Project classes online because Tim +Mackie is a fantastic teacher and BP has done be a great service by opening +my eyes to the reality of the Biblical narrative and what ... + read more → +
+ ++ + +I am moving a hefty amount of data to a new ZFS pool due to some corruption and I want to avoid using zfs send/recv for this just to make sure I don't propagate any corrupted data to my new pool. +I've used rsync for simple things before but I needed ... + read more → +
+ ++ + +Htop +I recently have been having significant home server issues, and that's not the point of this - today I learned what D state is when looking at htop. +htop-d +Apparently this means "uninterruptable sleep" and it's a dev's nightmare... +Co ... + read more → +
+ ++ + +Scripture +Luke 2:14 (ESV): 14 “Glory to God in the highest, and on earth peace among those with whom he is pleased!” +Edification +There is a word we probably know - Shalom. It's the Hebrew word we translate often as "peace". But when I hear ... + read more → +
+ ++ + +hostnamectl is apparently a linux utility for easily changing your hostname in a variety of ways + +❯ hostnamectl --help +hostnamectl [OPTIONS...] COMMAND ... + +Query or change system hostname. + +Commands: + status Show current hostname s ... + read more → +
+ ++ + +There a lot of flood stories throughout the history of the world, and the Bible +is no different in this regard. God warns Noah of a de-creation event, whereby +he'll start over with humanity via Noah and his family. Noah survives the flood +by abiding ... + read more → +
+ ++ + +This is your first post! +Edit this content +edit on content/{date}-welcome.md +Add more content +create new markdown files in the content folder +use marmite --new to create new content +Customize your site +edit marmite.yaml to change site settings +edit ... + read more → +
+ ++ + +the Logos web app is DISGUSTINGY bright/white - enough to actually ruin your morning... +Thankfully there's an extension called stylus and some kind folks in the Logos community created a nice dark theme here. You simply install the extension, then g ... + read more → +
+ +I use LSIO Jelyfin container for the easy addon they provide for AMD GPUs but I couldn't get trickplay to work with HWE...
\nThere was almost NOTHING on the internet about the error, and all the threads were about BSD systems...
\nThankfully someone posted on the formum here but the only answer was to literally upgrade stuff in the container...
\nSomeday maybe I'll build off of LSIO to add this, but until then I shell'd in and homelab'd the hell out of it
\n\n\nTHIS IS INSIDE THE CONTAINER - I use Portianer to make it easy
\n
\napt update && apt install -y curl gpg\n\nmkdir -p /etc/apt/keyrings\n\ncurl -fsSL https://repo.radeon.com/rocm/rocm.gpg.key | gpg --dearmor -o /etc/apt/keyrings/rocm.gpg\n\ncat <<EOF | tee /etc/apt/sources.list.d/rocm.sources\n\nTypes: deb\n\nURIs: https://repo.radeon.com/rocm/apt/latest\n\nSuites: ubuntu\n\nComponents: main\n\nArchitectures: amd64\n\nSigned-By: /etc/apt/keyrings/rocm.gpg\n\nEOF\n\napt update && apt install -y rocm-opencl-runtime\n
\n\n",
+ "summary": "",
+ "date_published": "2024-12-14T11:27:15-00:00",
+ "image": "",
+ "authors": [
+ {
+ "name": "Nicholas Payne",
+ "url": "https://github.com/pypeaday",
+ "avatar": "https://github.com/pypeaday.png"
+ }
+ ],
+ "tags": [
+ "containers",
+ "linux",
+ "tech"
+ ],
+ "language": "en"
+ },
+ {
+ "id": "https://pype.dev/the-flood-story-types-and-baptism.html",
+ "url": "https://pype.dev/the-flood-story-types-and-baptism.html",
+ "title": "The Flood Story - Types and Baptism",
+ "content_html": "\nJesus brings up the Flood story from Genesis just one time (in the recorded teachings we have).
\nFirst to set the scene, Jesus and his disciples are visiting the temple, and the disiples are kind of "ooo-ing" and "aaah-ing" when Jesus tells them about about the coming destruction...
\nMatthew 24:1–2 (ESV): 24 Jesus left the temple and was going away, when his\ndisciples came to point out to him the buildings of the temple. 2 But he\nanswered them, “You see all these, do you not? Truly, I say to you, there will\nnot be left here one stone upon another that will not be thrown down.” \n\nThe Holy Bible: English Standard Version (Mt 24:1–2). (2016). Crossway Bibles.\n\n
\nMatthew 24:37–39 (ESV): 37 For as were the days of Noah, so will be the coming\nof the Son of Man. 38 For as in those days before the flood they were eating\nand drinking, marrying and giving in marriage, until the day when Noah entered\nthe ark, 39 and they were unaware until the flood came and swept them all away,\nso will be the coming of the Son of Man. \n\nThe Holy Bible: English Standard Version (Mt 24:37–39). (2016). Crossway Bibles.\n
\nAt one point in Jesus' description of the destruction of the temple in\nJerusalem, he brings up the Son of Man and Noah...
\nJesus says that the "coming of the Son of Man" will be like when Noah built the\nark, and no one understood until the flood (κατακλυσμός | kataklysmos) came and\ntook them away.
\nIn Jesus' mind the flood narrative gives him imagery and vocabulary to talk\nabout when God allows foreign powers to come and bring judgement... This isn't\nan interpretation of the flood narrative, but it clues us into the idea that\nthe Hebrew bible is full of imagery, like a quilt, that follows a (or several)\npattern(s).
\nJesus understood the flood story as a pattern - a theological category to talk\nabout God overthrowing the corrupt power systems of our world - Tim Mackie\n
\n\n\nI think sometimes we look at the flood and think God is so bad for taking out\nall of humanity, but we miss the point... God is RESTORING humanity by\nremoving corruption... that's eventually the story we're invited into via\nfaith in Jesus
\n
A type
is a category of prophecy, and an antitype
is the revelation of the type.
Essentially - a type
is a pattern, and the antytype
is the revelation of\nthe meaning of the pattern - and without understanding the preceding types (in\nthis case, the flood) then the antitype cannot be understood (in this case\nbaptism)
\n\na trivial example of how a type, or a pattern, can be noticed and even build\nanticipation is to think 2, 4, 6, 8... what comes next? 10, and we all know\nthat immediately. Types in general, and types in the Bible are no different,\nalbeit not so simple...
\n
Brace yourself...
\n1 Peter 3:18–22 (ESV): 18 For Christ also suffered once for sins, the righteous\nfor the unrighteous, that he might bring us to God, being put to death in the\nflesh but made alive in the spirit, 19 in which he went and proclaimed to the\nspirits in prison, 20 because they formerly did not obey, when God’s patience\nwaited in the days of Noah, while the ark was being prepared, in which a few,\nthat is, eight persons, were brought safely through water. 21 Baptism, which\ncorresponds to this, now saves you, not as a removal of dirt from the body but\nas an appeal to God for a good conscience, through the resurrection of Jesus\nChrist, 22 who has gone into heaven and is at the right hand of God, with\nangels, authorities, and powers having been subjected to him. \n\nThe Holy Bible: English Standard Version (1 Pe 3:18–22). (2016). Crossway\nBibles.\n
\nNotice verse 21 - "Baptism, which corresponds to this"
\nCorresponds is the word ἀντίτυπος (antitupos) in Greek, which means "anti-type"\nThis means clearly that the type
, or a type, for baptism, is the flood\nnarrative... or that baptism is the antitype for the flood
What does this mean for baptism?
\n21 Baptism, which\ncorresponds to this, now saves you, not as a removal of dirt from the body but\nas an appeal to God for a good conscience, through the resurrection of Jesus\nChrist, 22 who has gone into heaven and is at the right hand of God, with\nangels, authorities, and powers having been subjected to him\n
\nThrough baptism, we experience with Jesus, resurrection and rule of the angels,\nauthorities, and power of the world...
\nFor the disciples listening... are they arguing about when the flood happened?\nor if it was a global or local flood?
\nNo... they are listening to Jesus unpack patterns in the Bible and they hear\nhim invite them, through a story they know very well, into rule and reign with\nhim
\n\n", + "summary": "", + "date_published": "2024-12-14T06:06:38-00:00", + "image": "", + "authors": [ + { + "name": "Nicholas Payne", + "url": "https://github.com/pypeaday", + "avatar": "https://github.com/pypeaday.png" + } + ], + "tags": [ + "bible-project", + "faith" + ], + "language": "en" + }, + { + "id": "https://pype.dev/the-flood-story-quilt-analogy.html", + "url": "https://pype.dev/the-flood-story-quilt-analogy.html", + "title": "The Flood Story - Quilt Analogy", + "content_html": "\nI'm slowly making my way through some Bible Project classes online because Tim\nMackie is a fantastic teacher and BP has done be a great service by opening\nmy eyes to the reality of the Biblical narrative and what it means for my life\nof faith in Jesus.
\nThe second session is filled with great points and 10 minutes in I had to jot\nthis one down...
\nImagine your grandmother's grandmother made a quilt, and passed it down the\nfamily tree. In a sense, that quilt contains history that would pre-date you\nbut would absolutely have meaning to you... However, you might look for meaning\nthat was never intended to be present.
\nThe pieces of the quilt have their own history - there will be material that\nmight've been part of a dress, or curtains, or bedsheets, or anything else\nsomeone in the family tree found interesting and meaningful for the story they\nare telling with their quilt.
\nThe question of what each of the pieces mean on their own, or in where they\ncome from is interesting perhaps, but it's not the same question as asking what\nthose pieces mean now that they have been curated into the family quilt... The\ncreator(s) of the quilt may repurpose those pieces entirely, and it wouldn't be\n"right" for you or me to be upset that one piece of the quilt came from an\narticle of clothing or cloth associated with something we might not like - the\nauthor (your grandma) repurposed it for that very reason, to change the\nmeaning and communicate something to you, perhaps something totally different\nthan what that cloth might've meant before it was added to the quilt.
\nThe quilt is a curated piece of pieces of fabric - and to bring the metaphor\nhome very abruptly, so is the Hebrew Bible... the authors of the Hebrew\nscripture absolutely repurposed stories and images that were present in their\ntime and before, but not to make something that is a cheap copy, but to\ncommunicate the story of the actual God of gods, ruling over the world.
\nFor example - the very beginning of the creationa ccount in Genesis 1 has the\nspirit of God hovering over the waters. Without getting into more details than\na short write-up warrants, the waters in ancient thought represent chaos. Not\nonly that, but there is an older creation account called the Enuma Elish where\ntheir savior god, Marduk, fights the chaos waters (Tiamat) and conquers her\neventually... The thing about the Hebrew narrative is that Yahweh doesn't have\nto fight the waters... he subdues with his words because he isn't in tension\nwith creation, or even with chaos, all things obey him and the chaos waters\nthat other gods had to fight and die over are no different. So the meaning of\nthe waters is somewhat consistent across lots of cultures, but Hebrews took the\nstories and in essence made them "more true", but at the very least made them\nrelevant to the story they are/were communicating about the God of gods and\nLord of love - that he is the creator of all things and invites us to partner\nwith him (as his image-bearers).
\nA lot of Christians get upset or skiddish when other stories and cultures get\nbrought up - as if the Bible had to fall from heaven in their favorite English\ntranslation... but in my opinion that is the silliest and cheapest view of the\nWord of God... he chose people out of foreign lands to make an inheritence for\nhimself, his people, and those people tell his story using images that they\nknow.
\nIt's important for us to answer interesting questions but not lose sight of\nwhat's important... The Enuma Elish is an interesting piece, and there's\nparallels with the Hebrew bible, but the Hebrew creation account clearly\ncommunicates that Yahweh doesn't have to labor and fight for order, he speaks\norder into chaos. That lesson is wholly different from other creation\nnarratives, but is it derivative of them...
\nThat used to bother me, but understanding that the authors of the Bible,\ncarried forth by the guidance of God's spirit, curated these stories and\nnarratives for God's people to communicate the truest Truths about him and his\nlove for people help me understand the reality of God partnering with humanity
\nI am moving a hefty amount of data to a new ZFS pool due to some corruption and I want to avoid using zfs send/recv
for this just to make sure I don't propagate any corrupted data to my new pool.
I've used rsync
for simple things before but I needed this to be a little smarter and I wanted to see simple progress without flooding my terminal with a billion filenames.
TLDR:\nrsync -aHAX --chmod=Da+s --info=progress2 --inplace --exclude='encrypted/docker/frigate-media' /tank/ /harbor/
-aHAX: Preserves attributes (archive mode, hard links, ACLs, extended attributes).\n--chmod=Da+s: Ensures the setgid bit is applied to directories.\n--info=progress2: Provides detailed progress information, including overall data transfer stats.\n--inplace: Writes directly to the destination file, avoiding temporary files (useful for large files).\n--exclude='encrypted/docker/frigate-media': Excludes the specified path (relative to the /tank root).\n/tank/ /harbor/: Ensures the contents of /tank are copied directly into /harbor.
\n\n", + "summary": "", + "date_published": "2024-12-11T10:52:23-00:00", + "image": "", + "authors": [ + { + "name": "Nicholas Payne", + "url": "https://github.com/pypeaday", + "avatar": "https://github.com/pypeaday.png" + } + ], + "tags": [ + "linux", + "terminal", + "tech" + ], + "language": "en" + }, + { + "id": "https://pype.dev/d-and-uninterruptable-sleep.html", + "url": "https://pype.dev/d-and-uninterruptable-sleep.html", + "title": "D and uninterruptable sleep", + "content_html": "\nI recently have been having significant home server issues, and that's not the point of this - today I learned what D
state is when looking at htop.
Apparently this means "uninterruptable sleep" and it's a dev's nightmare...
\nThe issue I was having was that some zfs rollback
commands were hung - for hours... I wasn't sure what was going on, rollbacks should be instant but I figured it was just an artifact of these issues.
Turns out I still don't know what locked the disks up but I learned why <C>-c
did nothing...\nthe more you know
Luke 2:14 (ESV): 14 “Glory to God in the highest, and on earth peace among those with whom he is pleased!”
\nThere is a word we probably know - Shalom. It's the Hebrew word we translate often as "peace". But when I hear "peace" I often think about being calm - and that oversimplifies Shalom... I think a more appropriate understanding is "things are as they are supposed to be".
\nIn the Garden, we see Shalom - the Lord partnering with humanity to steward the earth, to make things as they were supposed to be...
\nYou all know we messed that up, Shalom was broken and humanity was exiled.
\nBut we have a Great Healer.
\nJesus is Lord of all, King of Heaven and Earth, Ruler of your lives and mine, and he is the Prince of Peace
\nThings in our lives are probably not often as they are supposed to be... We get sick, worry about bills, experience tragedy, and weather the storms of life. But there is hope - confident expectation - that peace already has been, and will continue to be, restored to those whom Jesus chooses, the ones with whom he is pleased.
\nJohn records a lot before telling us about the cross, and I won't recount that in this short edification. But he recalls a hopeful word from the Lord -
\nJohn 16:33 (LEB): 33 I [Jesus] have said these things to you so that in me you may have peace. In the world you have affliction, but have courage! I have conquered the world.”
\nThis season, and this week of Advent, I pray God presses the reality, and the hope for, peace, the expectation of Shalom, deeper into my heart. I pray the Spirit guides us all to bring the will of God to earth as it is in Heaven
\nFinally I pray we may all be given, and accept, the conviction of Paul -
\nRomans 8:18 For I consider that the sufferings of this present time are not worthy to be compared with the glory that is to be revealed to us.” Our present trials are not on an equal scale with the glory of heaven
\nMay the rest, the peace, the Shalom that Jesus gives to his followers be with you all. Amen.
\n\n", + "summary": "", + "date_published": "2024-12-06T15:26:15-00:00", + "image": "", + "authors": [ + { + "name": "Nicholas Payne", + "url": "https://github.com/pypeaday", + "avatar": "https://github.com/pypeaday.png" + } + ], + "tags": [ + "faith" + ], + "language": "en" + }, + { + "id": "https://pype.dev/hostnamectl-to-easily-change-hostname.html", + "url": "https://pype.dev/hostnamectl-to-easily-change-hostname.html", + "title": "hostnamectl to easily change hostname", + "content_html": "\nhostnamectl is apparently a linux utility for easily changing your hostname in a variety of ways
\n\n❯ hostnamectl --help\nhostnamectl [OPTIONS...] COMMAND ...\n\nQuery or change system hostname.\n\nCommands:\n status Show current hostname settings\n hostname [NAME] Get/set system hostname\n icon-name [NAME] Get/set icon name for host\n chassis [NAME] Get/set chassis type for host\n deployment [NAME] Get/set deployment environment for host\n location [NAME] Get/set location for host\n\nOptions:\n -h --help Show this help\n --version Show package version\n --no-ask-password Do not prompt for password\n -H --host=[USER@]HOST Operate on remote host\n -M --machine=CONTAINER Operate on local container\n --transient Only set transient hostname\n --static Only set static hostname\n --pretty Only set pretty hostname\n --json=pretty|short|off\n Generate JSON output\n\nSee the hostnamectl(1) man page for details.\n
\nI learned there's transient and static hostnames, so that's cool...
\nThe thing I needed was hostnamectl --static hostname babyblue-aurora
pretty sweet tool
\n\n", + "summary": "", + "date_published": "2024-12-06T07:25:59-00:00", + "image": "", + "authors": [ + { + "name": "Nicholas Payne", + "url": "https://github.com/pypeaday", + "avatar": "https://github.com/pypeaday.png" + } + ], + "tags": [ + "linux", + "terminal", + "tech" + ], + "language": "en" + }, + { + "id": "https://pype.dev/how-to-survive-the-flood.html", + "url": "https://pype.dev/how-to-survive-the-flood.html", + "title": "How To Survive The Flood", + "content_html": "\nThere a lot of flood stories throughout the history of the world, and the Bible\nis no different in this regard. God warns Noah of a de-creation event, whereby\nhe'll start over with humanity via Noah and his family. Noah survives the flood\nby abiding in Yahweh and staying close to the One who loves him.
\n\n\nNote this reflection doesn't address AT ALL if the flood narrative is a\n"real" historical event, whether it's a global or local event, or anything\nlike that - regardless of those points the Biblical authors used this type of\nimagery of chaos waters to communicate themes of judgement and wrath.
\n
Jesus, in the Sermon on the Mount with the 2 houses, calls back to the images\nof the chaos waters (the winds and the rains). His instruction is that the wise\nman who built his house on the rock will survive, but the foolish man builds\nhis house on the sand and the winds and the rains destroyed it.
\nSomewhat obviously this is metaphorical for basing your life on wisdom or\nfolly. The wisdom is Jesus' teaching which is all based on Yahweh's love for\nhumanity and his desire to partner with humanity for the good of the whole\nearth.
\nThe simple take-away is for us to survive the winds and the rain, and to say it\nmore fully - to survive de-creation and destruction, we must live our lives in\na way that revolves around Jesus, the perfect human. He calls us to a greater\nhumanity, an unbroken humanity, which is unachievable apart from him (just look\naround if you doubt this truth).
\nIt's important to notice though that abiding in the Lord, basing your life on\nthe rock, doesn't spare you from the wind and the rain. Trials come, life gets\nhard, shit hits the fan. The last few weeks for me haven't been my favorite and\nI've certainly experienced turmoil in my life but frankly Jesus makes those\nthings bearable... in a way I can't put enough words to I'll just be reminded of\nPaul in Romans 8...
\nworthy to be compared with the glory that is to be revealed to us.” Our present\ntrials are not on an equal scale with the glory of heaven ```\n\nBy God's grace he's molded my heart to be nearly incapable of separating the\nLove God has for me from any trial I face - it's not a magic answer or silver\nbullet to fixing those problems, and it doesn't make them go away, but I know\nthe sufferings here aren't even worth comparing to the glory of the Lord. Amen.\n\n<!-- Content Injected to every content markdown footer -->\n\n[github]: https://github.com/rochacbruno/marmite\n
\n",
+ "summary": "",
+ "date_published": "2024-12-04T05:52:44-00:00",
+ "image": "",
+ "authors": [
+ {
+ "name": "Nicholas Payne",
+ "url": "https://github.com/pypeaday",
+ "avatar": "https://github.com/pypeaday.png"
+ }
+ ],
+ "tags": [
+ "bible-project",
+ "faith"
+ ],
+ "language": "en"
+ },
+ {
+ "id": "https://pype.dev/welcome.html",
+ "url": "https://pype.dev/welcome.html",
+ "title": "Welcome to Marmite",
+ "content_html": "\nThis is your first post!
\nedit on content/{date}-welcome.md
create new markdown files in the content
folder
use marmite --new
to create new content
edit marmite.yaml
to change site settings
edit the files starting with _
in the content
folder to change the layout
or edit the templates to create a custom layout
\nread more on marmite documentation
\n\n", + "summary": "", + "date_published": "2024-12-04T00:00:00-00:00", + "image": "", + "authors": [ + { + "name": "Nicholas Payne", + "url": "https://github.com/pypeaday", + "avatar": "https://github.com/pypeaday.png" + } + ], + "tags": [], + "language": "en" + }, + { + "id": "https://pype.dev/stylus-for-custom-webpage-themes.html", + "url": "https://pype.dev/stylus-for-custom-webpage-themes.html", + "title": "Stylus for custom webpage themes", + "content_html": "\nthe Logos web app is DISGUSTINGY bright/white - enough to actually ruin your morning...
\nThankfully there's an extension called stylus and some kind folks in the Logos community created a nice dark theme here. You simply install the extension, then go to the userstyles link <-- and click install
. It only changes themes for the sites configured - in this case app.logos.com
24 “Everyone then who hears these words of mine and does them will be like a wise man who built his house on the rock. 25 And the rain fell, and the floods came, and the winds blew and beat on that house, but it did not fall, because it had been founded on the rock. 26 And everyone who hears these words of mine and does not do them will be like a foolish man who built his house on the sand. 27 And the rain fell, and the floods came, and the winds blew and beat against that house, and it fell, and great was the fall of it.\n\nThe Holy Bible: English Standard Version (Mt 7:24–27). (2016). Crossway Bibles.\n
\nFrom the visual commentary Tim calls out a few things:
\nthe rock
is supposed to first call us back to earlier in the sermon when Jesus calls his people "the light of the world" and says "a city on a hill [mountain] cannot be hidden" (Matthew 5:14). The hill [ὄρος | oros] means "mountain" and is a hyperlink to OT teaching of God's people living in the ideal Jerusalem on Mt. Zion. Lots of Hebrew imagery here.
The rain and floods are a callback to the Chaos Waters of the OT (and general ANE thinking). It's a reference to the destructive nature that we humans have unleashed on the world - but the wise man who listens to Jesus lives a life with some amount of protection from those hardships - and ultimate protection from God handing us over to Chaos (destruction).
\nI rebooted by server and DNS broke randomly. I have no idea if it was from a kernel update or what but that's the issue with Ubuntu I guess...
\nAfter much toil and none of the other options working for me (sorry to not have those documented here) this is what got me the vic from this SO Post
\nsudo mkdir /etc/systemd/resolved.conf.d/\nsudo $EDITOR /etc/systemd/resolved.conf.d/dns_servers.conf
\nMost folks probably are good with google (8.8.8.8) and cloudflare (1.1.1.1)
\n[Resolve]\nDNS=8.8.8.8 1.1.1.1\n
\nBut I decided to use tailscale
\n[Resolve]\nDNS=100.100.100.100\n
\nThen restart systemd-resolved
\nsudo systemctl restart systemd-resolved
\n\n", + "summary": "", + "date_published": "2024-11-22T08:08:40-00:00", + "image": "", + "authors": [ + { + "name": "Nicholas Payne", + "url": "https://github.com/pypeaday", + "avatar": "https://github.com/pypeaday.png" + } + ], + "tags": [ + "homelab", + "linux", + "tech" + ], + "language": "en" + }, + { + "id": "https://pype.dev/restart-kde-plasma.html", + "url": "https://pype.dev/restart-kde-plasma.html", + "title": "Restart KDE Plasma", + "content_html": "\nPlasma shits the bed a little too often on Fedora for me right now but I finally have a quick fix...
\n\nsudo killall plasmashell\n\nkstart plasmashell\n\n
\n\n",
+ "summary": "",
+ "date_published": "2024-11-08T15:53:52-00:00",
+ "image": "",
+ "authors": [
+ {
+ "name": "Nicholas Payne",
+ "url": "https://github.com/pypeaday",
+ "avatar": "https://github.com/pypeaday.png"
+ }
+ ],
+ "tags": [
+ "linux",
+ "terminal",
+ "tech"
+ ],
+ "language": "en"
+ },
+ {
+ "id": "https://pype.dev/opnsense-bootstrap-recovery.html",
+ "url": "https://pype.dev/opnsense-bootstrap-recovery.html",
+ "title": "OPNSense Bootstrap Recovery",
+ "content_html": "\nenabling DHCP WAN port (dhclient <iface>
)- running the bootstrap script - sh /usr/local/sbin/opnsense-bootstrap
Matthew 7:12
\nSo then, everything you desire that people do to you, so also you do to them, for this is the Torah and the Prophets\n
\nI know there's a lot more to where the texts come from and the varying\ntraditions in Judaism. But I think at a very high level, Jesus is saying that\nwe all know, deep down, how to live in harmony but that it requires sacrifice.\nHe calls us to live sacrificially towards each other, to live in Heaven\ntoday, so we can experience the coming reality if our own resurrection
\n\n", + "summary": "", + "date_published": "2024-11-06T05:54:32-00:00", + "image": "", + "authors": [ + { + "name": "Nicholas Payne", + "url": "https://github.com/pypeaday", + "avatar": "https://github.com/pypeaday.png" + } + ], + "tags": [ + "bible-project", + "faith" + ], + "language": "en" + } + ] +} \ No newline at end of file diff --git a/archive-2024.rss b/archive-2024.rss new file mode 100644 index 00000000..47187a86 --- /dev/null +++ b/archive-2024.rss @@ -0,0 +1,387 @@ +I use LSIO Jelyfin container for the easy addon they provide for AMD GPUs but I couldn't get trickplay to work with HWE...
+There was almost NOTHING on the internet about the error, and all the threads were about BSD systems...
+Thankfully someone posted on the formum here but the only answer was to literally upgrade stuff in the container...
+Someday maybe I'll build off of LSIO to add this, but until then I shell'd in and homelab'd the hell out of it
+++THIS IS INSIDE THE CONTAINER - I use Portianer to make it easy
+
+apt update && apt install -y curl gpg
+
+mkdir -p /etc/apt/keyrings
+
+curl -fsSL https://repo.radeon.com/rocm/rocm.gpg.key | gpg --dearmor -o /etc/apt/keyrings/rocm.gpg
+
+cat <<EOF | tee /etc/apt/sources.list.d/rocm.sources
+
+Types: deb
+
+URIs: https://repo.radeon.com/rocm/apt/latest
+
+Suites: ubuntu
+
+Components: main
+
+Architectures: amd64
+
+Signed-By: /etc/apt/keyrings/rocm.gpg
+
+EOF
+
+apt update && apt install -y rocm-opencl-runtime
+
+
+]]>Jesus brings up the Flood story from Genesis just one time (in the recorded teachings we have).
+First to set the scene, Jesus and his disciples are visiting the temple, and the disiples are kind of "ooo-ing" and "aaah-ing" when Jesus tells them about about the coming destruction...
+Matthew 24:1–2 (ESV): 24 Jesus left the temple and was going away, when his
+disciples came to point out to him the buildings of the temple. 2 But he
+answered them, “You see all these, do you not? Truly, I say to you, there will
+not be left here one stone upon another that will not be thrown down.”
+
+The Holy Bible: English Standard Version (Mt 24:1–2). (2016). Crossway Bibles.
+
+
+Matthew 24:37–39 (ESV): 37 For as were the days of Noah, so will be the coming
+of the Son of Man. 38 For as in those days before the flood they were eating
+and drinking, marrying and giving in marriage, until the day when Noah entered
+the ark, 39 and they were unaware until the flood came and swept them all away,
+so will be the coming of the Son of Man.
+
+The Holy Bible: English Standard Version (Mt 24:37–39). (2016). Crossway Bibles.
+
+At one point in Jesus' description of the destruction of the temple in +Jerusalem, he brings up the Son of Man and Noah...
+Jesus says that the "coming of the Son of Man" will be like when Noah built the +ark, and no one understood until the flood (κατακλυσμός | kataklysmos) came and +took them away.
+In Jesus' mind the flood narrative gives him imagery and vocabulary to talk +about when God allows foreign powers to come and bring judgement... This isn't +an interpretation of the flood narrative, but it clues us into the idea that +the Hebrew bible is full of imagery, like a quilt, that follows a (or several) +pattern(s).
+Jesus understood the flood story as a pattern - a theological category to talk
+about God overthrowing the corrupt power systems of our world - Tim Mackie
+
+++I think sometimes we look at the flood and think God is so bad for taking out +all of humanity, but we miss the point... God is RESTORING humanity by +removing corruption... that's eventually the story we're invited into via +faith in Jesus
+
A type
is a category of prophecy, and an antitype
is the revelation of the type.
Essentially - a type
is a pattern, and the antytype
is the revelation of
+the meaning of the pattern - and without understanding the preceding types (in
+this case, the flood) then the antitype cannot be understood (in this case
+baptism)
++a trivial example of how a type, or a pattern, can be noticed and even build +anticipation is to think 2, 4, 6, 8... what comes next? 10, and we all know +that immediately. Types in general, and types in the Bible are no different, +albeit not so simple...
+
Brace yourself...
+1 Peter 3:18–22 (ESV): 18 For Christ also suffered once for sins, the righteous
+for the unrighteous, that he might bring us to God, being put to death in the
+flesh but made alive in the spirit, 19 in which he went and proclaimed to the
+spirits in prison, 20 because they formerly did not obey, when God’s patience
+waited in the days of Noah, while the ark was being prepared, in which a few,
+that is, eight persons, were brought safely through water. 21 Baptism, which
+corresponds to this, now saves you, not as a removal of dirt from the body but
+as an appeal to God for a good conscience, through the resurrection of Jesus
+Christ, 22 who has gone into heaven and is at the right hand of God, with
+angels, authorities, and powers having been subjected to him.
+
+The Holy Bible: English Standard Version (1 Pe 3:18–22). (2016). Crossway
+Bibles.
+
+Notice verse 21 - "Baptism, which corresponds to this"
+Corresponds is the word ἀντίτυπος (antitupos) in Greek, which means "anti-type"
+This means clearly that the type
, or a type, for baptism, is the flood
+narrative... or that baptism is the antitype for the flood
What does this mean for baptism?
+21 Baptism, which
+corresponds to this, now saves you, not as a removal of dirt from the body but
+as an appeal to God for a good conscience, through the resurrection of Jesus
+Christ, 22 who has gone into heaven and is at the right hand of God, with
+angels, authorities, and powers having been subjected to him
+
+Through baptism, we experience with Jesus, resurrection and rule of the angels, +authorities, and power of the world...
+For the disciples listening... are they arguing about when the flood happened? +or if it was a global or local flood?
+No... they are listening to Jesus unpack patterns in the Bible and they hear +him invite them, through a story they know very well, into rule and reign with +him
+ +]]>I'm slowly making my way through some Bible Project classes online because Tim +Mackie is a fantastic teacher and BP has done be a great service by opening +my eyes to the reality of the Biblical narrative and what it means for my life +of faith in Jesus.
+The second session is filled with great points and 10 minutes in I had to jot +this one down...
+Imagine your grandmother's grandmother made a quilt, and passed it down the +family tree. In a sense, that quilt contains history that would pre-date you +but would absolutely have meaning to you... However, you might look for meaning +that was never intended to be present.
+The pieces of the quilt have their own history - there will be material that +might've been part of a dress, or curtains, or bedsheets, or anything else +someone in the family tree found interesting and meaningful for the story they +are telling with their quilt.
+The question of what each of the pieces mean on their own, or in where they +come from is interesting perhaps, but it's not the same question as asking what +those pieces mean now that they have been curated into the family quilt... The +creator(s) of the quilt may repurpose those pieces entirely, and it wouldn't be +"right" for you or me to be upset that one piece of the quilt came from an +article of clothing or cloth associated with something we might not like - the +author (your grandma) repurposed it for that very reason, to change the +meaning and communicate something to you, perhaps something totally different +than what that cloth might've meant before it was added to the quilt.
+The quilt is a curated piece of pieces of fabric - and to bring the metaphor +home very abruptly, so is the Hebrew Bible... the authors of the Hebrew +scripture absolutely repurposed stories and images that were present in their +time and before, but not to make something that is a cheap copy, but to +communicate the story of the actual God of gods, ruling over the world.
+For example - the very beginning of the creationa ccount in Genesis 1 has the +spirit of God hovering over the waters. Without getting into more details than +a short write-up warrants, the waters in ancient thought represent chaos. Not +only that, but there is an older creation account called the Enuma Elish where +their savior god, Marduk, fights the chaos waters (Tiamat) and conquers her +eventually... The thing about the Hebrew narrative is that Yahweh doesn't have +to fight the waters... he subdues with his words because he isn't in tension +with creation, or even with chaos, all things obey him and the chaos waters +that other gods had to fight and die over are no different. So the meaning of +the waters is somewhat consistent across lots of cultures, but Hebrews took the +stories and in essence made them "more true", but at the very least made them +relevant to the story they are/were communicating about the God of gods and +Lord of love - that he is the creator of all things and invites us to partner +with him (as his image-bearers).
+A lot of Christians get upset or skiddish when other stories and cultures get +brought up - as if the Bible had to fall from heaven in their favorite English +translation... but in my opinion that is the silliest and cheapest view of the +Word of God... he chose people out of foreign lands to make an inheritence for +himself, his people, and those people tell his story using images that they +know.
+It's important for us to answer interesting questions but not lose sight of +what's important... The Enuma Elish is an interesting piece, and there's +parallels with the Hebrew bible, but the Hebrew creation account clearly +communicates that Yahweh doesn't have to labor and fight for order, he speaks +order into chaos. That lesson is wholly different from other creation +narratives, but is it derivative of them...
+That used to bother me, but understanding that the authors of the Bible, +carried forth by the guidance of God's spirit, curated these stories and +narratives for God's people to communicate the truest Truths about him and his +love for people help me understand the reality of God partnering with humanity
+I am moving a hefty amount of data to a new ZFS pool due to some corruption and I want to avoid using zfs send/recv
for this just to make sure I don't propagate any corrupted data to my new pool.
I've used rsync
for simple things before but I needed this to be a little smarter and I wanted to see simple progress without flooding my terminal with a billion filenames.
TLDR:
+rsync -aHAX --chmod=Da+s --info=progress2 --inplace --exclude='encrypted/docker/frigate-media' /tank/ /harbor/
-aHAX: Preserves attributes (archive mode, hard links, ACLs, extended attributes). +--chmod=Da+s: Ensures the setgid bit is applied to directories. +--info=progress2: Provides detailed progress information, including overall data transfer stats. +--inplace: Writes directly to the destination file, avoiding temporary files (useful for large files). +--exclude='encrypted/docker/frigate-media': Excludes the specified path (relative to the /tank root). +/tank/ /harbor/: Ensures the contents of /tank are copied directly into /harbor.
+ +]]>I recently have been having significant home server issues, and that's not the point of this - today I learned what D
state is when looking at htop.
Apparently this means "uninterruptable sleep" and it's a dev's nightmare...
+The issue I was having was that some zfs rollback
commands were hung - for hours... I wasn't sure what was going on, rollbacks should be instant but I figured it was just an artifact of these issues.
Turns out I still don't know what locked the disks up but I learned why <C>-c
did nothing...
+the more you know
Luke 2:14 (ESV): 14 “Glory to God in the highest, and on earth peace among those with whom he is pleased!”
+There is a word we probably know - Shalom. It's the Hebrew word we translate often as "peace". But when I hear "peace" I often think about being calm - and that oversimplifies Shalom... I think a more appropriate understanding is "things are as they are supposed to be".
+In the Garden, we see Shalom - the Lord partnering with humanity to steward the earth, to make things as they were supposed to be...
+You all know we messed that up, Shalom was broken and humanity was exiled.
+But we have a Great Healer.
+Jesus is Lord of all, King of Heaven and Earth, Ruler of your lives and mine, and he is the Prince of Peace
+Things in our lives are probably not often as they are supposed to be... We get sick, worry about bills, experience tragedy, and weather the storms of life. But there is hope - confident expectation - that peace already has been, and will continue to be, restored to those whom Jesus chooses, the ones with whom he is pleased.
+John records a lot before telling us about the cross, and I won't recount that in this short edification. But he recalls a hopeful word from the Lord -
+John 16:33 (LEB): 33 I [Jesus] have said these things to you so that in me you may have peace. In the world you have affliction, but have courage! I have conquered the world.”
+This season, and this week of Advent, I pray God presses the reality, and the hope for, peace, the expectation of Shalom, deeper into my heart. I pray the Spirit guides us all to bring the will of God to earth as it is in Heaven
+Finally I pray we may all be given, and accept, the conviction of Paul -
+Romans 8:18 For I consider that the sufferings of this present time are not worthy to be compared with the glory that is to be revealed to us.” Our present trials are not on an equal scale with the glory of heaven
+May the rest, the peace, the Shalom that Jesus gives to his followers be with you all. Amen.
+ +]]>hostnamectl is apparently a linux utility for easily changing your hostname in a variety of ways
+
+❯ hostnamectl --help
+hostnamectl [OPTIONS...] COMMAND ...
+
+Query or change system hostname.
+
+Commands:
+ status Show current hostname settings
+ hostname [NAME] Get/set system hostname
+ icon-name [NAME] Get/set icon name for host
+ chassis [NAME] Get/set chassis type for host
+ deployment [NAME] Get/set deployment environment for host
+ location [NAME] Get/set location for host
+
+Options:
+ -h --help Show this help
+ --version Show package version
+ --no-ask-password Do not prompt for password
+ -H --host=[USER@]HOST Operate on remote host
+ -M --machine=CONTAINER Operate on local container
+ --transient Only set transient hostname
+ --static Only set static hostname
+ --pretty Only set pretty hostname
+ --json=pretty|short|off
+ Generate JSON output
+
+See the hostnamectl(1) man page for details.
+
+I learned there's transient and static hostnames, so that's cool...
+The thing I needed was hostnamectl --static hostname babyblue-aurora
pretty sweet tool
+ +]]>There a lot of flood stories throughout the history of the world, and the Bible +is no different in this regard. God warns Noah of a de-creation event, whereby +he'll start over with humanity via Noah and his family. Noah survives the flood +by abiding in Yahweh and staying close to the One who loves him.
+++Note this reflection doesn't address AT ALL if the flood narrative is a +"real" historical event, whether it's a global or local event, or anything +like that - regardless of those points the Biblical authors used this type of +imagery of chaos waters to communicate themes of judgement and wrath.
+
Jesus, in the Sermon on the Mount with the 2 houses, calls back to the images +of the chaos waters (the winds and the rains). His instruction is that the wise +man who built his house on the rock will survive, but the foolish man builds +his house on the sand and the winds and the rains destroyed it.
+Somewhat obviously this is metaphorical for basing your life on wisdom or +folly. The wisdom is Jesus' teaching which is all based on Yahweh's love for +humanity and his desire to partner with humanity for the good of the whole +earth.
+The simple take-away is for us to survive the winds and the rain, and to say it +more fully - to survive de-creation and destruction, we must live our lives in +a way that revolves around Jesus, the perfect human. He calls us to a greater +humanity, an unbroken humanity, which is unachievable apart from him (just look +around if you doubt this truth).
+It's important to notice though that abiding in the Lord, basing your life on +the rock, doesn't spare you from the wind and the rain. Trials come, life gets +hard, shit hits the fan. The last few weeks for me haven't been my favorite and +I've certainly experienced turmoil in my life but frankly Jesus makes those +things bearable... in a way I can't put enough words to I'll just be reminded of +Paul in Romans 8...
+worthy to be compared with the glory that is to be revealed to us.” Our present
+trials are not on an equal scale with the glory of heaven ```
+
+By God's grace he's molded my heart to be nearly incapable of separating the
+Love God has for me from any trial I face - it's not a magic answer or silver
+bullet to fixing those problems, and it doesn't make them go away, but I know
+the sufferings here aren't even worth comparing to the glory of the Lord. Amen.
+
+<!-- Content Injected to every content markdown footer -->
+
+[github]: https://github.com/rochacbruno/marmite
+
+]]>This is your first post!
+edit on content/{date}-welcome.md
create new markdown files in the content
folder
use marmite --new
to create new content
edit marmite.yaml
to change site settings
edit the files starting with _
in the content
folder to change the layout
or edit the templates to create a custom layout
+read more on marmite documentation
+ +]]>the Logos web app is DISGUSTINGY bright/white - enough to actually ruin your morning...
+Thankfully there's an extension called stylus and some kind folks in the Logos community created a nice dark theme here. You simply install the extension, then go to the userstyles link <-- and click install
. It only changes themes for the sites configured - in this case app.logos.com
24 “Everyone then who hears these words of mine and does them will be like a wise man who built his house on the rock. 25 And the rain fell, and the floods came, and the winds blew and beat on that house, but it did not fall, because it had been founded on the rock. 26 And everyone who hears these words of mine and does not do them will be like a foolish man who built his house on the sand. 27 And the rain fell, and the floods came, and the winds blew and beat against that house, and it fell, and great was the fall of it.
+
+The Holy Bible: English Standard Version (Mt 7:24–27). (2016). Crossway Bibles.
+
+From the visual commentary Tim calls out a few things:
+the rock
is supposed to first call us back to earlier in the sermon when Jesus calls his people "the light of the world" and says "a city on a hill [mountain] cannot be hidden" (Matthew 5:14). The hill [ὄρος | oros] means "mountain" and is a hyperlink to OT teaching of God's people living in the ideal Jerusalem on Mt. Zion. Lots of Hebrew imagery here.
The rain and floods are a callback to the Chaos Waters of the OT (and general ANE thinking). It's a reference to the destructive nature that we humans have unleashed on the world - but the wise man who listens to Jesus lives a life with some amount of protection from those hardships - and ultimate protection from God handing us over to Chaos (destruction).
+I rebooted by server and DNS broke randomly. I have no idea if it was from a kernel update or what but that's the issue with Ubuntu I guess...
+After much toil and none of the other options working for me (sorry to not have those documented here) this is what got me the vic from this SO Post
+sudo mkdir /etc/systemd/resolved.conf.d/ +sudo $EDITOR /etc/systemd/resolved.conf.d/dns_servers.conf
+Most folks probably are good with google (8.8.8.8) and cloudflare (1.1.1.1)
+[Resolve]
+DNS=8.8.8.8 1.1.1.1
+
+But I decided to use tailscale
+[Resolve]
+DNS=100.100.100.100
+
+Then restart systemd-resolved
+sudo systemctl restart systemd-resolved
+ +]]>Plasma shits the bed a little too often on Fedora for me right now but I finally have a quick fix...
+
+sudo killall plasmashell
+
+kstart plasmashell
+
+
+
+]]>enabling DHCP WAN port (dhclient <iface>
)- running the bootstrap script - sh /usr/local/sbin/opnsense-bootstrap
Matthew 7:12
+So then, everything you desire that people do to you, so also you do to them, for this is the Torah and the Prophets
+
+I know there's a lot more to where the texts come from and the varying +traditions in Judaism. But I think at a very high level, Jesus is saying that +we all know, deep down, how to live in harmony but that it requires sacrifice. +He calls us to live sacrificially towards each other, to live in Heaven +today, so we can experience the coming reality if our own resurrection
+ +]]>TIL that when setting up download clients for +radarr/sonarr/lidarr/readarr/bazarr/prowlarr that you can utilize internal DNS +and instead of hardcoding an IP address of your download client server, can use +just the CNAME record (ie. instead of 172.10.14.13 I can use +transmission.mydomain.com... notice the lact of http(s)://... adding that won't +allow the connection to work/
+Furthermore, you can use internal DNS to lookup the domain, not the subdomain,
+and expose the port, like mydomain.com:7878
for sonarr. This was simpler to
+maintain because I don't change which ports an application exposes or utilizes
+hardly ever, plus I don't need to maintain CNAME records for every service!
+ + +I use LSIO Jelyfin container for the easy addon they provide for AMD GPUs but I couldn't get trickplay to work with HWE... +There was almost NOTHING on the internet about the error, and all the threads were about BSD systems... +Thankfully someone pos ... + read more → +
+ ++ + +The Flood Story and Jesus +Jesus brings up the Flood story from Genesis just one time (in the recorded teachings we have). +First to set the scene, Jesus and his disciples are visiting the temple, and the disiples are kind of "ooo-ing" and & ... + read more → +
+ ++ + +The Flood Story in the Hebrew Bible +I'm slowly making my way through some Bible Project classes online because Tim +Mackie is a fantastic teacher and BP has done be a great service by opening +my eyes to the reality of the Biblical narrative and what ... + read more → +
+ ++ + +I am moving a hefty amount of data to a new ZFS pool due to some corruption and I want to avoid using zfs send/recv for this just to make sure I don't propagate any corrupted data to my new pool. +I've used rsync for simple things before but I needed ... + read more → +
+ ++ + +Htop +I recently have been having significant home server issues, and that's not the point of this - today I learned what D state is when looking at htop. +htop-d +Apparently this means "uninterruptable sleep" and it's a dev's nightmare... +Co ... + read more → +
+ ++ + +Scripture +Luke 2:14 (ESV): 14 “Glory to God in the highest, and on earth peace among those with whom he is pleased!” +Edification +There is a word we probably know - Shalom. It's the Hebrew word we translate often as "peace". But when I hear ... + read more → +
+ ++ + +hostnamectl is apparently a linux utility for easily changing your hostname in a variety of ways + +❯ hostnamectl --help +hostnamectl [OPTIONS...] COMMAND ... + +Query or change system hostname. + +Commands: + status Show current hostname s ... + read more → +
+ ++ + +There a lot of flood stories throughout the history of the world, and the Bible +is no different in this regard. God warns Noah of a de-creation event, whereby +he'll start over with humanity via Noah and his family. Noah survives the flood +by abiding ... + read more → +
+ ++ + +This is your first post! +Edit this content +edit on content/{date}-welcome.md +Add more content +create new markdown files in the content folder +use marmite --new to create new content +Customize your site +edit marmite.yaml to change site settings +edit ... + read more → +
+ ++ + +the Logos web app is DISGUSTINGY bright/white - enough to actually ruin your morning... +Thankfully there's an extension called stylus and some kind folks in the Logos community created a nice dark theme here. You simply install the extension, then g ... + read more → +
+ ++ + +man can be a pain to read... and there's lots of alternatives out there and one I've just started playing with is cheat +man man will give you this plus a billion more lines of docs, which is useful when you need it... +MAN(1) ... + read more → +
+ ++ + +I got into a pickle where I encrypted the ssh keys I use for my SSH connections on LAN, but then I couldn't run my ansible playbook on my server! ssh-keygen -p and leave the new passphrase blank saved my day (although password protected key files ar ... + read more → +
+ ++ + +Mike Driscoll recently tweeted about making +colored out with pandas DataFrames and I just had to try it for myself +Use Case +First though... why? +My biggest use case is a monitoring pipeline of mine... The details aside, the +output of my pipeline is ... + read more → +
+ ++ + +see samba config on hogwarts + + + read more → +
+ ++ + +email1@me.com +somebody_else@gmail.com + + +#! /bin/bash +# pick multiple emails from list and combine into comma seperated array +emails=`cat .../emails | fzf -m | sed 's/^\|$/"/g'|paste -sd,` + +echo $emails + + + + + read more → +
+ ++ + +My Nextcloud woes +I wrote here about setting +up www-data as the owner of any directories you want nextcloud to manage. +However, I regularly struggle wtih permissions issues on my NAS because of the +external storage app anyways so I've decided to jus ... + read more → +
+ ++ + +TIL that when setting up download clients for +radarr/sonarr/lidarr/readarr/bazarr/prowlarr that you can utilize internal DNS +and instead of hardcoding an IP address of your download client server, can use +just the CNAME record (ie. instead of 172.10 ... + read more → +
+ ++ + +I ran out of space on the SSD in my server when doing some file transfers but only 100GB was used of a 256 GB SSD? +LVM +When installing Ubuntu live server the default option for how to partition the +disk (in my experience) has been to setup an LVM gr ... + read more → +
+ ++ + +When working with tdarr remote nodes, they need to have access not only to the +same libraries but also the same transcode cache as the server otherwise the +transcodes will fail... +Network Setup +To explain I'll give a brief overview of my home setup + ... + read more → +
+ ++ + +I use portainer to monitor my docker applications at home. I like that it shows me which ports are mapped where for every container all in one view but every time I click on a port (assuming it'll take me to that application via LAN) it goes to 0.0. ... + read more → +
+ ++ + +I get https URLs and domain resolution at home with pihole's DNS/CNAME records + + + read more → +
+ ++ + +Look at notes in home-server... apt repos, zfs, etc. + + + read more → +
+ ++ + +See 02-....yaml in ansible-nas + + + read more → +
+ ++ + +I am revamping my home server and bumped myself early up to Jammy Jellyfish... +however to my peril I reused my netplan config and after hitting my server with +the 'ol netplan apply I lost connection... +DNS still seemed to kinda work externally, but ... + read more → +
+ ++ + + +Setup admin +External Storage extension +Add my nas zfs dataset +chown -R www-data:www-data on anything nextcloud uploads to. + + + + read more → +
+ ++ + +I have list [True, False, False, True] and another list [1, 2, 3, 4] and a use case where I want to filter list 2 based on list 1 to remove values that line up with the element False in list 1.... so the outcome will be [1, 4]. list(compress(list2, ... + read more → +
+ ++ + +TL;DR +As the nextcloud docs say... if you want to write to an external volume that +location has to be writeable by the user/group www-data on the host system... +so if that makes sense to you then this TIL probably isn't a ton of value.. if +not howev ... + read more → +
+ ++ + +In vim G clog % does a git clog {current file}. You get every commit that the target file is apart of (so there might be info in those commits unrelated) + + + read more → +
+ ++ + +As I was cleaning up my NAS recently I noticed that I ran out of storage even +though my disk usage looked pretty low... turns out I was keeping a mega-ton of +ZFS snapshots and due to my own ignorance at the time didn't realize the +storage cost of th ... + read more → +
+ ++ + +From my daily driver Ubuntu machine I often open nautilus, dolphin, etc. and delete a file here or there on my NAS... turns out Ubuntu sends thse file to .Trash-100 ON THE NAS so I'm effectively just moving that file and not freeing up any space... + ... + read more → +
+ ++ + +I started my homelab journey being super naive about ZFS and how to manage the +filesystem... that bit me in the butt when transfering a ton of files out of +folders and into datasets because ZFS is copy on write so I was essentially +duplicating my st ... + read more → +
+ ++ + +:PlugSnapshot, :w ~/dotfiles/nvim/snapshot.vim... keep your config safe with git! + + + read more → +
+ ++ + +I've had Plug 'hrsh7th/cmp-path' in my plugins for ever but didn't notice +until recently that I wasn't getting any filepath completion in vim! +Fuller setup instructions below the TLDR +TL;DR +Turns out I need to not be a dope and configure nvim-cmp to ... + read more → +
+ ++ + +I just started using FastAPI for a home project and needed to pass back a +dynamic number of values from a form rendered with jinja... +Dynamic Values +The jinja templating for rendering HTML based on something like a python iterable is nice and easy + + ... + read more → +
+ ++ + +I'm currently working on a self-hostable wish list app using FastAPI so we can +finally drop Amazon forever. (The lists funcionality has been super handy for +sharing holiday gift ideas with the famj!) +FastAPI +FastAPI is an amazing framework for quick ... + read more → +
+ ++ + +If you use vim-plug for managing your vim plugins, do yourself a favor and snapshot your plugins before upgrading! +:PlugSnapshot creates a vim.snapshot file that you can use to restore your plugin versions with vim -S snapshot.vim +The snapshot file ... + read more → +
+ ++ + +TODO +title = "my Title" +eval('"my" in title') + +>>> True + + +print("hello, world"); print("formatting") + + + + read more → +
+ ++ + +TODO + +import os + +import boto3 +import pytest +from moto import mock_s3 + +MY_BUCKET = "bucket" +# BAD PREFIX +MY_PREFIX = "bucket/project/data/layer/dataset/" + + +@pytest.fixture(scope="function") +def aws_credentials(): + &qu ... + read more → +
+ ++ + +I wrote up a little on exporting DataFrames to markdown and html here +But I've been playing with a web app for with lists and while I'm toying around I learned you can actually give your tables some style with some simple css classes! +To HTML +Remind ... + read more → +
+ ++ + +Pandas +pandas.DataFrames are pretty sweet data structures in Python. +I do a lot of work with tabular data and one thing I have incorporated into some of that work is automatic data summary reports by throwing the first few, or several relevant, rows ... + read more → +
+ ++ + +Amazon has crossed the line with me just one too many times now so we are looking to drop them like every other Big Tech provider.... +However, one key feature of Amazon that has been so useful for us is Lists... We can just maintain a list for each ... + read more → +
+ ++ + +I try to commit a lot, and I also try to write useful tests appropriate for the scope of work I'm focusing on, but sometimes I drop the ball... +Whether by laziness, ignorance, or accepted tech debt I don't always code perfectly and recently I was do ... + read more → +
+ ++ + +TL;DR +pandas.Series.str.contains accepts regular expressions and this is turned on by default! +Use case +We often need to filter pandas DataFrames based on several string values in a Series. + +Notice that sweet pyflyby import 😁! + +sandbox main via 3 ... + read more → +
+ ++ + + + + read more → +
+ ++ + +htop is a common command line tool for seeing interactive output of your system resource utilization, running processes, etc. +I've always been super confused about htop showing seemingly the same process several times though... +The Fix... +Just hit H ... + read more → +
+ ++ + +Unpacking iterables in python with * is a pretty handy trick for writing code that is just a tiny bit more pythonic than not. +arr: Tuple[Union[int, str]] = (1, 2, 3, 'a', 'b', 'c') + + +print(arr) +>>> (1, 2, 3, 'a', 'b', 'c') + +# the * unpacks ... + read more → +
+ ++ + +pipx is a tool I've been using to solve a few problems of mine... + +pinning formatting tools like black, flake8, isort, etc. to the same version for all my projects +keeping virtual environments clean of things like cookiecutter +python utilities I wan ... + read more → +
+ ++ + +fx is an interactaive JSON viewer for the terminal. +It's a simple tool built with Charmcli's Bubble Tea. +Installation +The installation with go was broken for me - both via the link and direct from the repo. +Now I'm not a gopher so I don't really kno ... + read more → +
+ ++ + +I use Jellyfin at home for serving up most of our media - movies and shows etc. +My dream is to have a GPU capable of transcoding any and all of our media for smooth playback on any device... +Now, I thought I'd have that by now with my Nvidia Quadro ... + read more → +
+ ++ + +Type hinting has helped me write code almost as much, if not more, than unit testing. +One thing I love is that with complete type hinting you get a lot more out of your LSP. +Typing dictionaries can be tricky and I recently learned about TypedDict to ... + read more → +
+ ++ + +I've started using Terraform to manage Snowflake infrastructure at work. +I'm still a noobie but I've got a workflow that I think makes sense... +Here's the directory setup for a simple project with some databases, schemas, and tables to manage. +terra ... + read more → +
+ ++ + +My moonlander is great, and I just recently added CAPS LOCK back to my keymapping but I've moved it... +At present it is where the ESC kep usually is however I'm trying to match my general moonlander usage with a keymap that fits on a planck. +Because ... + read more → +
+ ++ + +My current homelab setup is not great but it works... +Proxmox on PowerEdge R610 +I boot off an SD card and have 1 SSD and 5 HDDs configured as a JBOD array using a Dell H700 SAS controller. +I cannot boot from a disk using this controller and I can't ... + read more → +
+ ++ + +I often struggle to remember the correct way to do and type comparisons when working in pandas. +I remember learning long long ago that and and & are different, the former being lazy boolean evaluation whereas the latter is a bitwise operation. +I ... + read more → +
+ ++ + +I have a specific need for counting the number of lines in a file quickly. +At work we use S3 for data storage during our Kedro pipeline development, and in the development process we may end up orphaning several datasets. +In order to keep our worksp ... + read more → +
+ ++ + +I have a post on starship where I have some notes on how I use starship to make my zsh experience great with a sweet terminal prompt. +Now... I spend quite a bit of time in ipython every day and I got kind of sick of the vanilla experience and wanted ... + read more → +
+ ++ + +Did you know you can spell check in Vim?! + + + + Vim Spell check + + + Without... + Here is a missspelled word. + <h3>With!</h3> + <p>Here is a <u>missspelled</u> word.</p> + + + +What is this magi ... + read more → +
+ ++ + +polybar is an awesome and super customizable status bar for your desktop environment. +I use it with i3-gaps on Ubuntu for work and it makes my day just that much better to have a clean and elegant bar with the things in it that I care about. +The Git ... + read more → +
+ ++ + +I am working on a project to create a small system monitoring dashboard using the python psutil library. +The repo is here (if you want actual system monitoring please use netdata). +I'm using streamlit and plotly for the webserver, design, and plotti ... + read more → +
+ ++ + +Streamlit +I use streamlit for any EDA I ever have to do at work. +It's super easy to spin up a small dashboard to filter and view dataframes in, live, without the fallbacks of Jupyter notebooks (kernels dying, memory bloat, a billion "Untitled N ... + read more → +
+ ++ + +If you spend time in the terminal then you'll want it to look somewhat pleasing to the eye. +I used to ssh into servers with no customization, use vi to edit a file or two, then get back to my regularly scheduled programming in VS C**e... +One of the ... + read more → +
+ ++ + +Self-hosting 1 or several media servers is another common homelab use-case. +Getting content for your media servers is up to you, but I'll show a few ways here to get content somewhat easily! +YouTube Disclaimer at Bottom +you-get +you-get is a nice cli ... + read more → +
+ ++ + +EDA +I work with data a lot, but the nature of my job isn't to dive super deep into a small amount of datasets, +I'm often jumping between several projects every day and need to just get a super quick glance at some tables to get a high level view. +Wh ... + read more → +
+ ++ + +NAS +One of the most common use cases for self-hosting anything is a file share system. +I have been a fan of TrueNAS for a while. +I currently use TrueNAS Core at home, and plan to consider transitioning to TrueNAS Scale soon. +Blog post forthcoming on ... + read more → +
+ ++ + +I like to keep my workspace clean and one thing that I don't personally love looking at is the __pycache__ directory that pops up after running some code. +The *.pyc files that show up there are python bytecode and they are cached to make subsequent ... + read more → +
+ ++ + +Mike Driscoll has been posting some awesome posts about psutil lately. +I'm interested in making my own system monitoring dashboard now using this library. +I don't expect it to compete with Netdata or Glances but it'll just be for fun to see how Pyth ... + read more → +
+ ++ + +If you work with a template for several projects then you might sometimes need to do the same action across all repos. +A good example of this is updating a package in requirements.txt in every project, or refactoring a common module. +If you have sev ... + read more → +
+ ++ + +VPN +Virtual Private Networks are a big deal, and this shouldn't be considered anything even close to a guide on using them. +Here are just my notes and some setup for how I use wireguard at home. +Wireguard +Wireguard is an awesome peer-to-peer VPN tun ... + read more → +
+ ++ + +Git +Hopefully if you write code you are using git, if not go learn the basics of commit, pull, push, and pull request/merge request like... right now. +Assuming you are at least familiar with git then you probably work the same way I have since I've ... + read more → +
+ ++ + +ABCMeta +I don't do a lot of OOP currently, but I have been on a few heavy OOP projects and this ABCMeta and abstractmethod from abc would've been super nice to know about! +If you are creating a library with classes that you expect your users to exte ... + read more → +
+ ++ + +Being lazy +I almost exclusively use Python for my job and have been eye-balls deep in it for almost 5 years but I really lack in-depth knowledge of builtins. +I recently learned of an awesome builtin called calendar that has way more than I know abo ... + read more → +
+ ++ + +I am personally trying to use logger instead of print in all of my code, +however I learned from [@Python-Hub] that you can align printouts using print with f-strings!. +This little python script shows how options in the f-string can format the printo ... + read more → +
+ ++ + +I have often wanted to dive into memory usage for pandas DataFrames when it comes to cloud deployment. +If I have a python process running on a server at home I can use glances or a number of other tools to diagnose a memory issue... +However at work ... + read more → +
+ ++ + +I run pi-hole at home for ad blocking and some internal DNS/DHCP handling. +pi hole posts on the way +One thing I've never put too much thought in is asking "how well am I doing at blocking?" +There's lots of ways to measure that depending on ... + read more → +
+ ++ + +I host a lot of services in my homelab, but they're mostly dockerized applications so I have never had to care much about how content gets served up. +Today I had several little concepts click into place regarding webservers, and it was a similar exp ... + read more → +
+ ++ + +I wanted a quick way to generate an index.html for a directory of html files that grows by 1 or 2 files a week. +I don't know any html (the files are exports from my tiddlywiki)... +tree is just the answer. +Say I have a file structure like this: +./htm ... + read more → +
+ ++ + +Traefik +If you don't know about traefik and you need a reverse-proxy then you might want to check it out. +I used to use nginx for my reverse proxy but the config was over my head, and once it was working I was afraid to touch it. +Traefik brings a lo ... + read more → +
+ ++ + +On my team we often have to change data types of columns in a pandas.DataFrame for a variety of reasons. +The main one is it tends to be an artifact of EDA whereby a file is read in via pandas but the data types are somewhat wonky (ie. dates show up ... + read more → +
+ ++ + +Tiddly Wiki is a great note taking utility for organizing non-linear notes. +I used it to replace my OneNote workflow and my only complaint is I don't have an easy way to access and edit my tiddlers (posts) if I'm not at home. +The tiddlywiki is just ... + read more → +
+ ++ + +I ran into an issue where I had some copy-pasta markdown tables in a docstring but the generator I used to make the table gave me tabs instead of spaces in odd places which caused black to throw a fit. +Instead of manually changing all tabs to spaes, ... + read more → +
+ ++ + +Check out stow for a brief introduction to stow +What if I want to stow a package somewhere else? +Boom, that's where -t comes in... +Maybe I don't like having my dotfiles repo at $HOME and instead I want it in ~/git or ~/personal just to stay organize ... + read more → +
+ ++ + +After carefully staging only lines related to a specific change and comitting I suddenly realized I missed one... darn, what do I do? +Old me would have soft reset my branch to the previous commit and redone all my careful staging... what a PIA... +Ne ... + read more → +
+ ++ + +Stow is a great tool for managing dotfiles. My usage looks like cloning my dotfiles to my home directory, setting some environment variables via a script, then stowing relevant packages and boom my config is good to go... +cd ~ +git clone <my dotfi ... + read more → +
+ ++ + +Sometimes I need to manually set a static IP of a Linux machine. I generally run the latest version of Ubuntu server in my VMs at home. +In Ubuntu 20 I'm able to change up /etc/netplan/<something>.yml +network: + version: 2 + ethernets: + enp0 ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +Context +24 “Everyone then who hears these words of mine and does them will be like a wise man who built his house on the rock. 25 And the rain fell, and the floods came, and the winds blew and beat on that house, but it did not fall, because it had ... + read more → +
+ ++ + +I rebooted by server and DNS broke randomly. I have no idea if it was from a kernel update or what but that's the issue with Ubuntu I guess... +After much toil and none of the other options working for me (sorry to not have those documented here) thi ... + read more → +
+ ++ + +Plasma shits the bed a little too often on Fedora for me right now but I finally have a quick fix... + +sudo killall plasmashell + +kstart plasmashell + + + + + read more → +
+ ++ + +enabling DHCP WAN port (dhclient <iface>)- running the bootstrap script - sh /usr/local/sbin/opnsense-bootstrap + + + read more → +
+ ++ + +Matthew 7:12 +So then, everything you desire that people do to you, so also you do to them, for this is the Torah and the Prophets + +What do I desire that people "do to [me]"? + +Help if I need it - I want to live in a world where humans are h ... + read more → +
+ ++ + +I woke up to faulty internet and after some troubleshooting it turns out the +root zfs dataset that OPNSense boots from got corrupted... + +PRO-TIP - Auto backup your OPNSense config to Google Drive, git, or +nextcloud... But if you won't then at least ... + read more → +
+ ++ + +Passage +Why do you see the speck in the eye of your brother, but you don't perceive the +beam in your own eye? + +Or how can you say to your brother, "Allow me to take out the speck from your +eye," and look, the beam is in your eye! + +Hypocrit ... + read more → +
+ ++ + +This morning I finally felt some motivation for a short Bible Project video. The app is great (💯 would recommend) and gives me daily reminders that are unobtrusive. +The passage is Matthew 7:1-2 +Do not judge so tha tyou will not be judged. Because wi ... + read more → +
+ ++ + +Add from url?? +ADD http://example.com/cars.csv /tmp/cars.csv +Unpack automatically!? (.tar, .tar.gz, .tgz, .bz2, .tbz2, .txz, .zip) +ADD myapp.tar.gz /opt/myapp/ + + + read more → +
+ ++ + +COPY --chown=myuser:mygroup source-file target-file + + + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +I was using a fun LaTex-based project for managing my resume called AltaCV. I loved the customization and was familiar with Tek from school. However, I update my resume so infrequently that anytime I'd hop back to it I'd have to remember how to work ... + read more → +
+ ++ + +When connecting from my phone to jellyfin I'm seeing some interesting patterns. +Scenarios +Tailscale IP of phone is listed as local network to jellyfin +Wifi: off +Tailscale: on +Use exit node: on +LAN access: on +Jellyfin: LAN IP +Jellyfin sees 192.168.1. ... + read more → +
+ ++ + +https://forum.proxmox.com/threads/update-error-with-coral-tpu-drivers.136888/#post-608975 I lost TPU for frigate, this saved me ass + + + read more → +
+ ++ + +Jet Brains has to be specified 'JetBrainsMono Nerd Font Mono' + + + read more → +
+ ++ + +To customize k9s use the skins from catppuccin or the ones k9s supplies +OUT="${XDG_CONFIG_HOME:-$HOME/.config}/k9s/skins" +mkdir -p "$OUT" +curl -L https://github.com/catppuccin/k9s/archive/main.tar.gz | tar xz -C "$OUT" ... + read more → +
+ ++ + +TL;DR +I've been using kanboard as a self-hosted kanban board. It's keeping me focused on Digital Harbor when I'd rather be doing something less productive. +My TODOs +Here's the thing about my TODOs... they're everywhere. I've tried a crazy amount of ... + read more → +
+ ++ + +I started deploying a website to Cloudflare on a branch called pages. Similar to one of the GH Pages deployment patterns. But when my CI was pushing the branch I couldn't see it locally... +git fetch -a wasn't pulling any new branches, and git branch ... + read more → +
+ ++ + +git config --add --local core.sshCommand 'ssh -i <<<PATH_TO_SSH_KEY>>>' + + + read more → +
+ ++ + +Video +Sermon on the Mount +3 chapters filled with phrases that are very well-known in our culture +Phrases + +Love your neighbor as yourself +Do to others what you would have them do to you +You are the salt of the earth +You can’t serve both God and money ... + read more → +
+ ++ + +I moved a computer to a remote location for an off-site backup but when it was powered on it wouldn't show up on any networks. A solution that got me back in was a friend restarting the dhcp client for me: +sudo dhclient -r -v <interface> & ... + read more → +
+ ++ + +Dragons are metaphorical images in the Bible +Goliath -> armor descriptions +Leviathan +Dragon slayers can be enticed to become dragons themselves +Jesus is the great dragon slayer, who doesn't give in to the inticing power of the dragon + +calming the ... + read more → +
+ ++ + +https://forum.opnsense.org/index.php?topic=8783.0 + + + read more → +
+ ++ + +Exec in as www-data and run ./occ groupfolders:scan folder_id -v (the -v to see what it's doing) + + + read more → +
+ ++ + +lsof | grep /tank/nas shows me what is using my nas at any time! + + + read more → +
+ ++ + +➜ pihole sudo zfs load-key -L file:///path/to/.zfs.tank.key tank/encrypted/vms/arch-sandbox +➜ pihole sudo zfs change-key -o keylocation=file:///path/to/.zfs.tank.key -o keyformat=raw tank/encrypted/vms/arch-sandbox +Need to load-key for each individu ... + read more → +
+ ++ + +I've been using paperless-ngx to manage all my documents, but every once in a while I'll get a .docx file to deal with... +Turns out Libreoffice has a headless mode a pdf converter built-in! +libreoffice --headless --convert-to pdf /path/to/file.docx ... + read more → +
+ ++ + +ChatGPT Prompt: +Stable Diffusion is an AI art generation model similar to DALLE-2. +Here are some prompts for generating art with Stable Diffusion. +Example: + +A ghostly apparition drifting through a haunted mansion's grand ballroom, illuminated by fli ... + read more → +
+ ++ + + +James +2023 study of the book of James +BP +The Guy +Greek: Iakobos (Jacob in English) +Jacob is one of Jesus' half-brothers who became a leader of the Jerusalem church post-resurrection +The book of James is the legacy of this Jacob's wisdom which was h ... + read more → +
+ ++ + +ffmpeg -i input.mp4 -map 0 -c:v libx264 -vf format=yuv420p -c:a copy output.mp4 + + + read more → +
+ ++ + +I was introduced to tiling window managers through i3, which I use heavily on +one of my machines. I have switched to Pop_OS! at home though, which has a +tiling window mode but the keybindings are not what I'm used to for i3. I +wanted to at least nav ... + read more → +
+ ++ + +I was getting (publickey denied) when trying to push to GH using ssh. When I +tested the connection I saw that a bunch of keys in ``~/.ssh/ were being +attempted +✗ ssh git@github.com -vv + +... + +debug1: Will attempt key: /home/nic/.ssh/id_rsa +debug1: W ... + read more → +
+ ++ + +Playing around with Modal Labs +One of the first things I tried was a regular cron job... +@stub.function( + schedule=modal.Period(minutes=59), secret=modal.Secret.from_name("my-dummy-secret") +) +def say_hi(): + now = time.ctime() + sec ... + read more → +
+ ++ + +ssh-copy-id -i my.key.pub <hostname probably from tailscale> +this makes sure I can run ansible from my desktop against VMs on my server +easily if they have tailscale for the hostname - otherwise use the IP + + + read more → +
+ ++ + +https://nicolasbouliane.com/blog/nextcloud-docker-upgrade-error + + + read more → +
+ ++ + +I have a bash script called syncoid-job which boils down to a barebones - +#!/bin/bash + +syncoid --no-sync-snap --sendoptions=w --no-privilege-elevation $SYNOIC_USER@$SERVER:tank/encrypted/nas tank/encrypted/nas + +I want to run this script hourly but a ... + read more → +
+ ++ + +in /lib/systemd/system/docker.service there is an ExecStart command that got placed there when I setup Docker with Ansible - it threw the -H flag which told the daemon what hosts to setup. But I added the "hosts" key in my daemon.json and ... + read more → +
+ ++ + +I regularly need to edit system config files - take /etc/sanoid/sanoid.conf as +an example... I'll want to play with something but if I don't start Neovim as +root then I get in trouble making edits I can't save! So +suda.vim gives me +:SudaWrite which ... + read more → +
+ ++ + +I'm playing with my ansible playbook in a remote tmux session, and I'm no wiz +so I don't know the ins and outs, but I can't scroll up to get any console log +output that's not already visible on my screen. So I'm starting to end my +commands with | l ... + read more → +
+ ++ + +AJAX wasn't cutting it, traditional crontab in containers doesn't make much +sense to me, webcron is recommended but I don't want to register with anything +outside my LAN... Turns out you can just spin up an identical container with a +different entry ... + read more → +
+ ++ + +Logging instead of printing +I am trying to adopt logger.debug instead of print but ran into a confusing +thing in ipython during Advent of Code... I riddled by script with +logger.debug (yes after setting logging.setLevel('DEBUG')) but in ipython +none ... + read more → +
+ ++ + +I wanted to break down some long lines in a Markdown table cell to make it look +nicer on my blog but \n didn't do anything for me... turns out is the +magic sauce + + + +Column 1 +Column 2 + + + + +Key +Doggo ipsum many pats. Borkdrive borking doggo doing me a ... + read more → +
+ ++ + +Switching to Vim opened a whole new world to me for interacting with a computer +and for getting things done. Before I adopted Vim I used GUIs for everything +because I thought that's how it had to be done... Notes in OneNote, code using +a GUI editor, ... + read more → +
+ ++ + +mkdir s{1..10} will make directories s1, s2, ... s10 in one command! + + + read more → +
+ ++ + +Class link +Classroom notes (Must be on home network) +01 The Shape of the Hebrew Bible +Session 1: What on Earth is the Hebrew Bible? +This class is not so much a survey of the HB, it is Tim's attempt to distil the +most helpful things for understanding ... + read more → +
+ ++ + +/mysearch\c will match mysearch, MYSEARCH, mYSeArCh... + + + read more → +
+ ++ + +Link +Notes +!!! Exodusds 34:6 +Compassioante and gracious, slow to anger, overflowing with loyal love and faithfulness + +Faithfulness - Emet (can be translated 'Truth') +Related to "Amen" which is untranslated Hebrew expression meaning "t ... + read more → +
+ ++ + +zfs list has a flag -r, but if you use zfs driver for docker then you'll get +flooded with every docker volume in the world. zfs list -r -d N will limit the +dept of the print out, so zfs list -r -d 2 gives me tank, tank/encrypted, +tank/encrypted/dock ... + read more → +
+ ++ + +If you think glepnir/lspsaga.nvim config will work with tali5/lspsaga.nvim installed... you're in for a rude awakening. Double check your forks folks! + + + read more → +
+ ++ + +Link to study +Creation +Brougt to completion on the seventh day in Genesis 1. It is the only day that +does not end with 'there evening and there was morning, the Nth day' +Humans were meant to rest with God in his creation forever, but in their +reblli ... + read more → +
+ ++ + +I learned you can embed gifs and stuch in things other than GH personal pages! +So here I'll keep ones I like and might use later +via GIPHY + + + read more → +
+ ++ + +Bought some DDR4-3600 speed RAM but only seeing 2666? Load up the BIOS, find DRAM config or something similar, and make sure to load the XMP profile to get that advertised RAM speed! + + + read more → +
+ ++ + +!!! note "Babyblue v2" +Ryzen 5700x + 32 GB 3200 CL16 RAM + +<a href="https://www.passmark.com/baselines/V10/display.php?id=503041456656"><img src="https://www.passmark.com/baselines/V10/media/503041456656.png" al ... + read more → +
+ ++ + +ssh -v -i ~/.ssh/id_rsa nic@hogwarts +THen we can look at print outs +cat /var/log/auth.log also showed me that I had too wide permissions on files in ~/.ssh -> probably changed from an rsync job + + + read more → +
+ ++ + +link +Chara / Joy +There are several words for similar feelings - example like joy has several synonyms. +Sources +Genesis tells us creation and life bring joy +Psalm 104 - A good bottle of wine is God's gift to bring joy to people's hearts +P#lm 65 - Bea ... + read more → +
+ ++ + +Assuming you have a pool called tank... +And assuming you have an encrypted dataset (See Jim Saltar's short +intro) + +Create a group for permissions - in my case I have one called home +Then if there's anything in /tank/encrypted his it with chgrp -R ho ... + read more → +
+ ++ + +sudo dmidecode -s bios-version + + + read more → +
+ ++ + +link to study +Video +Priests +God creates Eden in which he places humans to be his royal image - priests. God +sets humans up to receive his blessing but humans choose their own way. The +promise is for a priest and a sacrifice to come in Jesus. +God cho ... + read more → +
+ ++ + +❯ find . -name "requirements.in" -print0 | xargs -0 sh -c 'for arg in "$@"; do echo "awscli" >>"$arg"; done' + + + read more → +
+ ++ + +Video +Eden +Biblical story begins in a garden, which is presented as a type of Temple. The +top (center) is the Tree of Life, which represents God's life and creative +power. Humans were supposed to eat from the Tree of Life but there's +another tree, t ... + read more → +
+ ++ + +study link +Peace +!!! note "" +generally means absnese of war + +In Hebrew the word is Shalom (Greek: Eirene). Basic biblical meeting of +Shalom is "complete" or "whole". ie. a stone with no cracks, or stone wall with +nogaps ... + read more → +
+ ++ + +I use Tmux and Vim for most of my workflow, but I end up with a lot of dangling +tmux sessions that dont' really need to persist... but killing them one at a +time is a pain so I wrote a little script-kitty nonsense to pipe multiple +choices from fzf i ... + read more → +
+ ++ + +link to presentation +Hellenism +During the "silent years" Hellenism was on the rise, even among several Jewish circles. +Essenes +Another Jewish group (like Pharisees, Herodians, etc.) with a lot of debate +surrounding them. They were largely ... + read more → +
+ ++ + +TODO: change title - add --listen or --host or something as 0.0.0.0... that way it listens not on localhost or 127.0.0.1, but on all addresses! + + + read more → +
+ ++ + +Herodians show up twice in the Gospels, Josephus talks about them a bit as +well. There is a lot of hsitorical debate that surrounds the Herodians. + +Like Republicans and Democracts meant one thing in American history, but +those positions and words me ... + read more → +
+ ++ + +Link to presentation +Sadducees +>Often we in the modern time totally conflate Sadducees and Pharisees but they +>are as Republicans and Democrats today... very much not the same +Origin +Back in the Davidic kingdom they are the group that sought t ... + read more → +
+ ++ + +Hellenism + +For the first time in history, Greeks redefined worldfiew to be cenetered +around the individual. Prior to Hellenism, worldviews centered around +pleasing the gods + +Alexander the Great had his own gospel (εὐαγγέλιον - euangelion: predates b ... + read more → +
+ ++ + +https://www.simplified.guide/linux/disk-health-check +Install +For ubuntu/debian based distros (which is what I primarly use presently) +sudo apt update -y && sudo apt install smartmontools -y +List hard drives +lsblk | grep disk is one way or su ... + read more → +
+ ++ + +Link to presentation +Judaism +Modern Judaism is very different from Jesus' Judaism which was distinct from +David's Judaism, etc... We, as modern westerners, need to be aware of the +religious evolution and history of Judaism to properly understand the ... + read more → +
+ ++ + +Intro +Session 1: Torah +Session 2: Prophets and Writings +Review +Torah +Big idea: partnership + +Basis of partnership / meet the characters (Genesis) +God chooses a partner / the partner chooses God (Exodus) +God defines the partnership (Leviticus) +God sha ... + read more → +
+ ++ + +Intro +I use ZFS at home in my homelab for basically all of my storage... Docker uses +ZFS backend, all my VMs have their .qcow2 images in their own zfs datasets, +and all my shares are ZFS datasets. I love ZFS but my home hardware presently +is the opp ... + read more → +
+ ++ + +import this; print(this); print("what is taking so long black!!") + + + + read more → +
+ ++ + +Chapters +Below are just quick notes or quotes from each chapter as a reminder of what to +go back to chat about. This isn't intended to be in-depth by any stretch. +Chapter 1 +"Your man has been accustomed, ever since he was a boy, to have a dozen ... + read more → +
+ ++ + +To filter for saved views from the admin console you have to use the id of +the tag you are using to filter on... +Ex: filtering for tags "Inbox" doesn't work, but for tag 18 does (the id fo the +Inbox tag). I can find that ID by clicking on ... + read more → +
+ ++ + +Steps +sudo fdisk -l +then look for the device and partition +get the Type column +mount +Example + +dumbledore in /media NO PYTHON VENV SET +❯ sudo fdisk -l + +... + +Device Boot Start End Sectors Size Id Type +/dev/sdk1 * 2048 60371951 ... + read more → +
+ ++ + +I just need to RDP into an Ubuntu box via Remmina and everytime I login I have +to authenticate to create a color managed device... which I don't even know +what that is! +To fix it? +vim /etc/polkit-1/localauthority.conf.d/02-allow-colord.conf +polkit.a ... + read more → +
+ ++ + +zfs allow -u $USER clone,load-key,create,destroy,mount,mountpoint,receive,send,rollback,compression,snapshot,hold,keylocation,bookmark tank + +load-key only needed if using encrypted datasets + + + + read more → +
+ ++ + +Assuming you have a PXE server running you only need small edits to the virt-manager config + + + read more → +
+ ++ + +I decided that I want to self-host all my docker images for the purposes of +regularly rebuilding and security scanning. The first step is to set up a +registry, which coincidently enough you can do with a Docker container 😛! +Instructions for setting ... + read more → +
+ ++ + + +Dropdown menue in upper left - doesn't look like one but just click the name of the current device. +URL will be rtsp://<ip address> <- this was the ticket for me + + + + read more → +
+ ++ + +I have started using VMs more and more in my development workflow and it's +impossible to work in a VM without an internet connection for me most of the +time. Setting up the KVM networking is kind of confusing to me and I've done it +two different way ... + read more → +
+ ++ + +I use LSIO Jelyfin container for the easy addon they provide for AMD GPUs but I couldn't get trickplay to work with HWE... +There was almost NOTHING on the internet about the error, and all the threads were about BSD systems... +Thankfully someone pos ... + read more → +
+ ++ + +The Flood Story and Jesus +Jesus brings up the Flood story from Genesis just one time (in the recorded teachings we have). +First to set the scene, Jesus and his disciples are visiting the temple, and the disiples are kind of "ooo-ing" and & ... + read more → +
+ ++ + +The Flood Story in the Hebrew Bible +I'm slowly making my way through some Bible Project classes online because Tim +Mackie is a fantastic teacher and BP has done be a great service by opening +my eyes to the reality of the Biblical narrative and what ... + read more → +
+ ++ + +I am moving a hefty amount of data to a new ZFS pool due to some corruption and I want to avoid using zfs send/recv for this just to make sure I don't propagate any corrupted data to my new pool. +I've used rsync for simple things before but I needed ... + read more → +
+ ++ + +Htop +I recently have been having significant home server issues, and that's not the point of this - today I learned what D state is when looking at htop. +htop-d +Apparently this means "uninterruptable sleep" and it's a dev's nightmare... +Co ... + read more → +
+ ++ + +Scripture +Luke 2:14 (ESV): 14 “Glory to God in the highest, and on earth peace among those with whom he is pleased!” +Edification +There is a word we probably know - Shalom. It's the Hebrew word we translate often as "peace". But when I hear ... + read more → +
+ ++ + +hostnamectl is apparently a linux utility for easily changing your hostname in a variety of ways + +❯ hostnamectl --help +hostnamectl [OPTIONS...] COMMAND ... + +Query or change system hostname. + +Commands: + status Show current hostname s ... + read more → +
+ ++ + +There a lot of flood stories throughout the history of the world, and the Bible +is no different in this regard. God warns Noah of a de-creation event, whereby +he'll start over with humanity via Noah and his family. Noah survives the flood +by abiding ... + read more → +
+ ++ + +This is your first post! +Edit this content +edit on content/{date}-welcome.md +Add more content +create new markdown files in the content folder +use marmite --new to create new content +Customize your site +edit marmite.yaml to change site settings +edit ... + read more → +
+ ++ + +the Logos web app is DISGUSTINGY bright/white - enough to actually ruin your morning... +Thankfully there's an extension called stylus and some kind folks in the Logos community created a nice dark theme here. You simply install the extension, then g ... + read more → +
+ +I use LSIO Jelyfin container for the easy addon they provide for AMD GPUs but I couldn't get trickplay to work with HWE...
\nThere was almost NOTHING on the internet about the error, and all the threads were about BSD systems...
\nThankfully someone posted on the formum here but the only answer was to literally upgrade stuff in the container...
\nSomeday maybe I'll build off of LSIO to add this, but until then I shell'd in and homelab'd the hell out of it
\n\n\nTHIS IS INSIDE THE CONTAINER - I use Portianer to make it easy
\n
\napt update && apt install -y curl gpg\n\nmkdir -p /etc/apt/keyrings\n\ncurl -fsSL https://repo.radeon.com/rocm/rocm.gpg.key | gpg --dearmor -o /etc/apt/keyrings/rocm.gpg\n\ncat <<EOF | tee /etc/apt/sources.list.d/rocm.sources\n\nTypes: deb\n\nURIs: https://repo.radeon.com/rocm/apt/latest\n\nSuites: ubuntu\n\nComponents: main\n\nArchitectures: amd64\n\nSigned-By: /etc/apt/keyrings/rocm.gpg\n\nEOF\n\napt update && apt install -y rocm-opencl-runtime\n
\n\n",
+ "summary": "",
+ "date_published": "2024-12-14T11:27:15-00:00",
+ "image": "",
+ "authors": [
+ {
+ "name": "Nicholas Payne",
+ "url": "https://github.com/pypeaday",
+ "avatar": "https://github.com/pypeaday.png"
+ }
+ ],
+ "tags": [
+ "containers",
+ "linux",
+ "tech"
+ ],
+ "language": "en"
+ },
+ {
+ "id": "https://pype.dev/the-flood-story-types-and-baptism.html",
+ "url": "https://pype.dev/the-flood-story-types-and-baptism.html",
+ "title": "The Flood Story - Types and Baptism",
+ "content_html": "\nJesus brings up the Flood story from Genesis just one time (in the recorded teachings we have).
\nFirst to set the scene, Jesus and his disciples are visiting the temple, and the disiples are kind of "ooo-ing" and "aaah-ing" when Jesus tells them about about the coming destruction...
\nMatthew 24:1–2 (ESV): 24 Jesus left the temple and was going away, when his\ndisciples came to point out to him the buildings of the temple. 2 But he\nanswered them, “You see all these, do you not? Truly, I say to you, there will\nnot be left here one stone upon another that will not be thrown down.” \n\nThe Holy Bible: English Standard Version (Mt 24:1–2). (2016). Crossway Bibles.\n\n
\nMatthew 24:37–39 (ESV): 37 For as were the days of Noah, so will be the coming\nof the Son of Man. 38 For as in those days before the flood they were eating\nand drinking, marrying and giving in marriage, until the day when Noah entered\nthe ark, 39 and they were unaware until the flood came and swept them all away,\nso will be the coming of the Son of Man. \n\nThe Holy Bible: English Standard Version (Mt 24:37–39). (2016). Crossway Bibles.\n
\nAt one point in Jesus' description of the destruction of the temple in\nJerusalem, he brings up the Son of Man and Noah...
\nJesus says that the "coming of the Son of Man" will be like when Noah built the\nark, and no one understood until the flood (κατακλυσμός | kataklysmos) came and\ntook them away.
\nIn Jesus' mind the flood narrative gives him imagery and vocabulary to talk\nabout when God allows foreign powers to come and bring judgement... This isn't\nan interpretation of the flood narrative, but it clues us into the idea that\nthe Hebrew bible is full of imagery, like a quilt, that follows a (or several)\npattern(s).
\nJesus understood the flood story as a pattern - a theological category to talk\nabout God overthrowing the corrupt power systems of our world - Tim Mackie\n
\n\n\nI think sometimes we look at the flood and think God is so bad for taking out\nall of humanity, but we miss the point... God is RESTORING humanity by\nremoving corruption... that's eventually the story we're invited into via\nfaith in Jesus
\n
A type
is a category of prophecy, and an antitype
is the revelation of the type.
Essentially - a type
is a pattern, and the antytype
is the revelation of\nthe meaning of the pattern - and without understanding the preceding types (in\nthis case, the flood) then the antitype cannot be understood (in this case\nbaptism)
\n\na trivial example of how a type, or a pattern, can be noticed and even build\nanticipation is to think 2, 4, 6, 8... what comes next? 10, and we all know\nthat immediately. Types in general, and types in the Bible are no different,\nalbeit not so simple...
\n
Brace yourself...
\n1 Peter 3:18–22 (ESV): 18 For Christ also suffered once for sins, the righteous\nfor the unrighteous, that he might bring us to God, being put to death in the\nflesh but made alive in the spirit, 19 in which he went and proclaimed to the\nspirits in prison, 20 because they formerly did not obey, when God’s patience\nwaited in the days of Noah, while the ark was being prepared, in which a few,\nthat is, eight persons, were brought safely through water. 21 Baptism, which\ncorresponds to this, now saves you, not as a removal of dirt from the body but\nas an appeal to God for a good conscience, through the resurrection of Jesus\nChrist, 22 who has gone into heaven and is at the right hand of God, with\nangels, authorities, and powers having been subjected to him. \n\nThe Holy Bible: English Standard Version (1 Pe 3:18–22). (2016). Crossway\nBibles.\n
\nNotice verse 21 - "Baptism, which corresponds to this"
\nCorresponds is the word ἀντίτυπος (antitupos) in Greek, which means "anti-type"\nThis means clearly that the type
, or a type, for baptism, is the flood\nnarrative... or that baptism is the antitype for the flood
What does this mean for baptism?
\n21 Baptism, which\ncorresponds to this, now saves you, not as a removal of dirt from the body but\nas an appeal to God for a good conscience, through the resurrection of Jesus\nChrist, 22 who has gone into heaven and is at the right hand of God, with\nangels, authorities, and powers having been subjected to him\n
\nThrough baptism, we experience with Jesus, resurrection and rule of the angels,\nauthorities, and power of the world...
\nFor the disciples listening... are they arguing about when the flood happened?\nor if it was a global or local flood?
\nNo... they are listening to Jesus unpack patterns in the Bible and they hear\nhim invite them, through a story they know very well, into rule and reign with\nhim
\n\n", + "summary": "", + "date_published": "2024-12-14T06:06:38-00:00", + "image": "", + "authors": [ + { + "name": "Nicholas Payne", + "url": "https://github.com/pypeaday", + "avatar": "https://github.com/pypeaday.png" + } + ], + "tags": [ + "bible-project", + "faith" + ], + "language": "en" + }, + { + "id": "https://pype.dev/the-flood-story-quilt-analogy.html", + "url": "https://pype.dev/the-flood-story-quilt-analogy.html", + "title": "The Flood Story - Quilt Analogy", + "content_html": "\nI'm slowly making my way through some Bible Project classes online because Tim\nMackie is a fantastic teacher and BP has done be a great service by opening\nmy eyes to the reality of the Biblical narrative and what it means for my life\nof faith in Jesus.
\nThe second session is filled with great points and 10 minutes in I had to jot\nthis one down...
\nImagine your grandmother's grandmother made a quilt, and passed it down the\nfamily tree. In a sense, that quilt contains history that would pre-date you\nbut would absolutely have meaning to you... However, you might look for meaning\nthat was never intended to be present.
\nThe pieces of the quilt have their own history - there will be material that\nmight've been part of a dress, or curtains, or bedsheets, or anything else\nsomeone in the family tree found interesting and meaningful for the story they\nare telling with their quilt.
\nThe question of what each of the pieces mean on their own, or in where they\ncome from is interesting perhaps, but it's not the same question as asking what\nthose pieces mean now that they have been curated into the family quilt... The\ncreator(s) of the quilt may repurpose those pieces entirely, and it wouldn't be\n"right" for you or me to be upset that one piece of the quilt came from an\narticle of clothing or cloth associated with something we might not like - the\nauthor (your grandma) repurposed it for that very reason, to change the\nmeaning and communicate something to you, perhaps something totally different\nthan what that cloth might've meant before it was added to the quilt.
\nThe quilt is a curated piece of pieces of fabric - and to bring the metaphor\nhome very abruptly, so is the Hebrew Bible... the authors of the Hebrew\nscripture absolutely repurposed stories and images that were present in their\ntime and before, but not to make something that is a cheap copy, but to\ncommunicate the story of the actual God of gods, ruling over the world.
\nFor example - the very beginning of the creationa ccount in Genesis 1 has the\nspirit of God hovering over the waters. Without getting into more details than\na short write-up warrants, the waters in ancient thought represent chaos. Not\nonly that, but there is an older creation account called the Enuma Elish where\ntheir savior god, Marduk, fights the chaos waters (Tiamat) and conquers her\neventually... The thing about the Hebrew narrative is that Yahweh doesn't have\nto fight the waters... he subdues with his words because he isn't in tension\nwith creation, or even with chaos, all things obey him and the chaos waters\nthat other gods had to fight and die over are no different. So the meaning of\nthe waters is somewhat consistent across lots of cultures, but Hebrews took the\nstories and in essence made them "more true", but at the very least made them\nrelevant to the story they are/were communicating about the God of gods and\nLord of love - that he is the creator of all things and invites us to partner\nwith him (as his image-bearers).
\nA lot of Christians get upset or skiddish when other stories and cultures get\nbrought up - as if the Bible had to fall from heaven in their favorite English\ntranslation... but in my opinion that is the silliest and cheapest view of the\nWord of God... he chose people out of foreign lands to make an inheritence for\nhimself, his people, and those people tell his story using images that they\nknow.
\nIt's important for us to answer interesting questions but not lose sight of\nwhat's important... The Enuma Elish is an interesting piece, and there's\nparallels with the Hebrew bible, but the Hebrew creation account clearly\ncommunicates that Yahweh doesn't have to labor and fight for order, he speaks\norder into chaos. That lesson is wholly different from other creation\nnarratives, but is it derivative of them...
\nThat used to bother me, but understanding that the authors of the Bible,\ncarried forth by the guidance of God's spirit, curated these stories and\nnarratives for God's people to communicate the truest Truths about him and his\nlove for people help me understand the reality of God partnering with humanity
\nI am moving a hefty amount of data to a new ZFS pool due to some corruption and I want to avoid using zfs send/recv
for this just to make sure I don't propagate any corrupted data to my new pool.
I've used rsync
for simple things before but I needed this to be a little smarter and I wanted to see simple progress without flooding my terminal with a billion filenames.
TLDR:\nrsync -aHAX --chmod=Da+s --info=progress2 --inplace --exclude='encrypted/docker/frigate-media' /tank/ /harbor/
-aHAX: Preserves attributes (archive mode, hard links, ACLs, extended attributes).\n--chmod=Da+s: Ensures the setgid bit is applied to directories.\n--info=progress2: Provides detailed progress information, including overall data transfer stats.\n--inplace: Writes directly to the destination file, avoiding temporary files (useful for large files).\n--exclude='encrypted/docker/frigate-media': Excludes the specified path (relative to the /tank root).\n/tank/ /harbor/: Ensures the contents of /tank are copied directly into /harbor.
\n\n", + "summary": "", + "date_published": "2024-12-11T10:52:23-00:00", + "image": "", + "authors": [ + { + "name": "Nicholas Payne", + "url": "https://github.com/pypeaday", + "avatar": "https://github.com/pypeaday.png" + } + ], + "tags": [ + "linux", + "terminal", + "tech" + ], + "language": "en" + }, + { + "id": "https://pype.dev/d-and-uninterruptable-sleep.html", + "url": "https://pype.dev/d-and-uninterruptable-sleep.html", + "title": "D and uninterruptable sleep", + "content_html": "\nI recently have been having significant home server issues, and that's not the point of this - today I learned what D
state is when looking at htop.
Apparently this means "uninterruptable sleep" and it's a dev's nightmare...
\nThe issue I was having was that some zfs rollback
commands were hung - for hours... I wasn't sure what was going on, rollbacks should be instant but I figured it was just an artifact of these issues.
Turns out I still don't know what locked the disks up but I learned why <C>-c
did nothing...\nthe more you know
Luke 2:14 (ESV): 14 “Glory to God in the highest, and on earth peace among those with whom he is pleased!”
\nThere is a word we probably know - Shalom. It's the Hebrew word we translate often as "peace". But when I hear "peace" I often think about being calm - and that oversimplifies Shalom... I think a more appropriate understanding is "things are as they are supposed to be".
\nIn the Garden, we see Shalom - the Lord partnering with humanity to steward the earth, to make things as they were supposed to be...
\nYou all know we messed that up, Shalom was broken and humanity was exiled.
\nBut we have a Great Healer.
\nJesus is Lord of all, King of Heaven and Earth, Ruler of your lives and mine, and he is the Prince of Peace
\nThings in our lives are probably not often as they are supposed to be... We get sick, worry about bills, experience tragedy, and weather the storms of life. But there is hope - confident expectation - that peace already has been, and will continue to be, restored to those whom Jesus chooses, the ones with whom he is pleased.
\nJohn records a lot before telling us about the cross, and I won't recount that in this short edification. But he recalls a hopeful word from the Lord -
\nJohn 16:33 (LEB): 33 I [Jesus] have said these things to you so that in me you may have peace. In the world you have affliction, but have courage! I have conquered the world.”
\nThis season, and this week of Advent, I pray God presses the reality, and the hope for, peace, the expectation of Shalom, deeper into my heart. I pray the Spirit guides us all to bring the will of God to earth as it is in Heaven
\nFinally I pray we may all be given, and accept, the conviction of Paul -
\nRomans 8:18 For I consider that the sufferings of this present time are not worthy to be compared with the glory that is to be revealed to us.” Our present trials are not on an equal scale with the glory of heaven
\nMay the rest, the peace, the Shalom that Jesus gives to his followers be with you all. Amen.
\n\n", + "summary": "", + "date_published": "2024-12-06T15:26:15-00:00", + "image": "", + "authors": [ + { + "name": "Nicholas Payne", + "url": "https://github.com/pypeaday", + "avatar": "https://github.com/pypeaday.png" + } + ], + "tags": [ + "faith" + ], + "language": "en" + }, + { + "id": "https://pype.dev/hostnamectl-to-easily-change-hostname.html", + "url": "https://pype.dev/hostnamectl-to-easily-change-hostname.html", + "title": "hostnamectl to easily change hostname", + "content_html": "\nhostnamectl is apparently a linux utility for easily changing your hostname in a variety of ways
\n\n❯ hostnamectl --help\nhostnamectl [OPTIONS...] COMMAND ...\n\nQuery or change system hostname.\n\nCommands:\n status Show current hostname settings\n hostname [NAME] Get/set system hostname\n icon-name [NAME] Get/set icon name for host\n chassis [NAME] Get/set chassis type for host\n deployment [NAME] Get/set deployment environment for host\n location [NAME] Get/set location for host\n\nOptions:\n -h --help Show this help\n --version Show package version\n --no-ask-password Do not prompt for password\n -H --host=[USER@]HOST Operate on remote host\n -M --machine=CONTAINER Operate on local container\n --transient Only set transient hostname\n --static Only set static hostname\n --pretty Only set pretty hostname\n --json=pretty|short|off\n Generate JSON output\n\nSee the hostnamectl(1) man page for details.\n
\nI learned there's transient and static hostnames, so that's cool...
\nThe thing I needed was hostnamectl --static hostname babyblue-aurora
pretty sweet tool
\n\n", + "summary": "", + "date_published": "2024-12-06T07:25:59-00:00", + "image": "", + "authors": [ + { + "name": "Nicholas Payne", + "url": "https://github.com/pypeaday", + "avatar": "https://github.com/pypeaday.png" + } + ], + "tags": [ + "linux", + "terminal", + "tech" + ], + "language": "en" + }, + { + "id": "https://pype.dev/how-to-survive-the-flood.html", + "url": "https://pype.dev/how-to-survive-the-flood.html", + "title": "How To Survive The Flood", + "content_html": "\nThere a lot of flood stories throughout the history of the world, and the Bible\nis no different in this regard. God warns Noah of a de-creation event, whereby\nhe'll start over with humanity via Noah and his family. Noah survives the flood\nby abiding in Yahweh and staying close to the One who loves him.
\n\n\nNote this reflection doesn't address AT ALL if the flood narrative is a\n"real" historical event, whether it's a global or local event, or anything\nlike that - regardless of those points the Biblical authors used this type of\nimagery of chaos waters to communicate themes of judgement and wrath.
\n
Jesus, in the Sermon on the Mount with the 2 houses, calls back to the images\nof the chaos waters (the winds and the rains). His instruction is that the wise\nman who built his house on the rock will survive, but the foolish man builds\nhis house on the sand and the winds and the rains destroyed it.
\nSomewhat obviously this is metaphorical for basing your life on wisdom or\nfolly. The wisdom is Jesus' teaching which is all based on Yahweh's love for\nhumanity and his desire to partner with humanity for the good of the whole\nearth.
\nThe simple take-away is for us to survive the winds and the rain, and to say it\nmore fully - to survive de-creation and destruction, we must live our lives in\na way that revolves around Jesus, the perfect human. He calls us to a greater\nhumanity, an unbroken humanity, which is unachievable apart from him (just look\naround if you doubt this truth).
\nIt's important to notice though that abiding in the Lord, basing your life on\nthe rock, doesn't spare you from the wind and the rain. Trials come, life gets\nhard, shit hits the fan. The last few weeks for me haven't been my favorite and\nI've certainly experienced turmoil in my life but frankly Jesus makes those\nthings bearable... in a way I can't put enough words to I'll just be reminded of\nPaul in Romans 8...
\nworthy to be compared with the glory that is to be revealed to us.” Our present\ntrials are not on an equal scale with the glory of heaven ```\n\nBy God's grace he's molded my heart to be nearly incapable of separating the\nLove God has for me from any trial I face - it's not a magic answer or silver\nbullet to fixing those problems, and it doesn't make them go away, but I know\nthe sufferings here aren't even worth comparing to the glory of the Lord. Amen.\n\n<!-- Content Injected to every content markdown footer -->\n\n[github]: https://github.com/rochacbruno/marmite\n
\n",
+ "summary": "",
+ "date_published": "2024-12-04T05:52:44-00:00",
+ "image": "",
+ "authors": [
+ {
+ "name": "Nicholas Payne",
+ "url": "https://github.com/pypeaday",
+ "avatar": "https://github.com/pypeaday.png"
+ }
+ ],
+ "tags": [
+ "bible-project",
+ "faith"
+ ],
+ "language": "en"
+ },
+ {
+ "id": "https://pype.dev/welcome.html",
+ "url": "https://pype.dev/welcome.html",
+ "title": "Welcome to Marmite",
+ "content_html": "\nThis is your first post!
\nedit on content/{date}-welcome.md
create new markdown files in the content
folder
use marmite --new
to create new content
edit marmite.yaml
to change site settings
edit the files starting with _
in the content
folder to change the layout
or edit the templates to create a custom layout
\nread more on marmite documentation
\n\n", + "summary": "", + "date_published": "2024-12-04T00:00:00-00:00", + "image": "", + "authors": [ + { + "name": "Nicholas Payne", + "url": "https://github.com/pypeaday", + "avatar": "https://github.com/pypeaday.png" + } + ], + "tags": [], + "language": "en" + }, + { + "id": "https://pype.dev/stylus-for-custom-webpage-themes.html", + "url": "https://pype.dev/stylus-for-custom-webpage-themes.html", + "title": "Stylus for custom webpage themes", + "content_html": "\nthe Logos web app is DISGUSTINGY bright/white - enough to actually ruin your morning...
\nThankfully there's an extension called stylus and some kind folks in the Logos community created a nice dark theme here. You simply install the extension, then go to the userstyles link <-- and click install
. It only changes themes for the sites configured - in this case app.logos.com
24 “Everyone then who hears these words of mine and does them will be like a wise man who built his house on the rock. 25 And the rain fell, and the floods came, and the winds blew and beat on that house, but it did not fall, because it had been founded on the rock. 26 And everyone who hears these words of mine and does not do them will be like a foolish man who built his house on the sand. 27 And the rain fell, and the floods came, and the winds blew and beat against that house, and it fell, and great was the fall of it.\n\nThe Holy Bible: English Standard Version (Mt 7:24–27). (2016). Crossway Bibles.\n
\nFrom the visual commentary Tim calls out a few things:
\nthe rock
is supposed to first call us back to earlier in the sermon when Jesus calls his people "the light of the world" and says "a city on a hill [mountain] cannot be hidden" (Matthew 5:14). The hill [ὄρος | oros] means "mountain" and is a hyperlink to OT teaching of God's people living in the ideal Jerusalem on Mt. Zion. Lots of Hebrew imagery here.
The rain and floods are a callback to the Chaos Waters of the OT (and general ANE thinking). It's a reference to the destructive nature that we humans have unleashed on the world - but the wise man who listens to Jesus lives a life with some amount of protection from those hardships - and ultimate protection from God handing us over to Chaos (destruction).
\nI rebooted by server and DNS broke randomly. I have no idea if it was from a kernel update or what but that's the issue with Ubuntu I guess...
\nAfter much toil and none of the other options working for me (sorry to not have those documented here) this is what got me the vic from this SO Post
\nsudo mkdir /etc/systemd/resolved.conf.d/\nsudo $EDITOR /etc/systemd/resolved.conf.d/dns_servers.conf
\nMost folks probably are good with google (8.8.8.8) and cloudflare (1.1.1.1)
\n[Resolve]\nDNS=8.8.8.8 1.1.1.1\n
\nBut I decided to use tailscale
\n[Resolve]\nDNS=100.100.100.100\n
\nThen restart systemd-resolved
\nsudo systemctl restart systemd-resolved
\n\n", + "summary": "", + "date_published": "2024-11-22T08:08:40-00:00", + "image": "", + "authors": [ + { + "name": "Nicholas Payne", + "url": "https://github.com/pypeaday", + "avatar": "https://github.com/pypeaday.png" + } + ], + "tags": [ + "homelab", + "linux", + "tech" + ], + "language": "en" + }, + { + "id": "https://pype.dev/restart-kde-plasma.html", + "url": "https://pype.dev/restart-kde-plasma.html", + "title": "Restart KDE Plasma", + "content_html": "\nPlasma shits the bed a little too often on Fedora for me right now but I finally have a quick fix...
\n\nsudo killall plasmashell\n\nkstart plasmashell\n\n
\n\n",
+ "summary": "",
+ "date_published": "2024-11-08T15:53:52-00:00",
+ "image": "",
+ "authors": [
+ {
+ "name": "Nicholas Payne",
+ "url": "https://github.com/pypeaday",
+ "avatar": "https://github.com/pypeaday.png"
+ }
+ ],
+ "tags": [
+ "linux",
+ "terminal",
+ "tech"
+ ],
+ "language": "en"
+ },
+ {
+ "id": "https://pype.dev/opnsense-bootstrap-recovery.html",
+ "url": "https://pype.dev/opnsense-bootstrap-recovery.html",
+ "title": "OPNSense Bootstrap Recovery",
+ "content_html": "\nenabling DHCP WAN port (dhclient <iface>
)- running the bootstrap script - sh /usr/local/sbin/opnsense-bootstrap
Matthew 7:12
\nSo then, everything you desire that people do to you, so also you do to them, for this is the Torah and the Prophets\n
\nI know there's a lot more to where the texts come from and the varying\ntraditions in Judaism. But I think at a very high level, Jesus is saying that\nwe all know, deep down, how to live in harmony but that it requires sacrifice.\nHe calls us to live sacrificially towards each other, to live in Heaven\ntoday, so we can experience the coming reality if our own resurrection
\n\n", + "summary": "", + "date_published": "2024-11-06T05:54:32-00:00", + "image": "", + "authors": [ + { + "name": "Nicholas Payne", + "url": "https://github.com/pypeaday", + "avatar": "https://github.com/pypeaday.png" + } + ], + "tags": [ + "bible-project", + "faith" + ], + "language": "en" + } + ] +} \ No newline at end of file diff --git a/author-nicpayne.rss b/author-nicpayne.rss new file mode 100644 index 00000000..b9441262 --- /dev/null +++ b/author-nicpayne.rss @@ -0,0 +1,387 @@ +I use LSIO Jelyfin container for the easy addon they provide for AMD GPUs but I couldn't get trickplay to work with HWE...
+There was almost NOTHING on the internet about the error, and all the threads were about BSD systems...
+Thankfully someone posted on the formum here but the only answer was to literally upgrade stuff in the container...
+Someday maybe I'll build off of LSIO to add this, but until then I shell'd in and homelab'd the hell out of it
+++THIS IS INSIDE THE CONTAINER - I use Portianer to make it easy
+
+apt update && apt install -y curl gpg
+
+mkdir -p /etc/apt/keyrings
+
+curl -fsSL https://repo.radeon.com/rocm/rocm.gpg.key | gpg --dearmor -o /etc/apt/keyrings/rocm.gpg
+
+cat <<EOF | tee /etc/apt/sources.list.d/rocm.sources
+
+Types: deb
+
+URIs: https://repo.radeon.com/rocm/apt/latest
+
+Suites: ubuntu
+
+Components: main
+
+Architectures: amd64
+
+Signed-By: /etc/apt/keyrings/rocm.gpg
+
+EOF
+
+apt update && apt install -y rocm-opencl-runtime
+
+
+]]>Jesus brings up the Flood story from Genesis just one time (in the recorded teachings we have).
+First to set the scene, Jesus and his disciples are visiting the temple, and the disiples are kind of "ooo-ing" and "aaah-ing" when Jesus tells them about about the coming destruction...
+Matthew 24:1–2 (ESV): 24 Jesus left the temple and was going away, when his
+disciples came to point out to him the buildings of the temple. 2 But he
+answered them, “You see all these, do you not? Truly, I say to you, there will
+not be left here one stone upon another that will not be thrown down.”
+
+The Holy Bible: English Standard Version (Mt 24:1–2). (2016). Crossway Bibles.
+
+
+Matthew 24:37–39 (ESV): 37 For as were the days of Noah, so will be the coming
+of the Son of Man. 38 For as in those days before the flood they were eating
+and drinking, marrying and giving in marriage, until the day when Noah entered
+the ark, 39 and they were unaware until the flood came and swept them all away,
+so will be the coming of the Son of Man.
+
+The Holy Bible: English Standard Version (Mt 24:37–39). (2016). Crossway Bibles.
+
+At one point in Jesus' description of the destruction of the temple in +Jerusalem, he brings up the Son of Man and Noah...
+Jesus says that the "coming of the Son of Man" will be like when Noah built the +ark, and no one understood until the flood (κατακλυσμός | kataklysmos) came and +took them away.
+In Jesus' mind the flood narrative gives him imagery and vocabulary to talk +about when God allows foreign powers to come and bring judgement... This isn't +an interpretation of the flood narrative, but it clues us into the idea that +the Hebrew bible is full of imagery, like a quilt, that follows a (or several) +pattern(s).
+Jesus understood the flood story as a pattern - a theological category to talk
+about God overthrowing the corrupt power systems of our world - Tim Mackie
+
+++I think sometimes we look at the flood and think God is so bad for taking out +all of humanity, but we miss the point... God is RESTORING humanity by +removing corruption... that's eventually the story we're invited into via +faith in Jesus
+
A type
is a category of prophecy, and an antitype
is the revelation of the type.
Essentially - a type
is a pattern, and the antytype
is the revelation of
+the meaning of the pattern - and without understanding the preceding types (in
+this case, the flood) then the antitype cannot be understood (in this case
+baptism)
++a trivial example of how a type, or a pattern, can be noticed and even build +anticipation is to think 2, 4, 6, 8... what comes next? 10, and we all know +that immediately. Types in general, and types in the Bible are no different, +albeit not so simple...
+
Brace yourself...
+1 Peter 3:18–22 (ESV): 18 For Christ also suffered once for sins, the righteous
+for the unrighteous, that he might bring us to God, being put to death in the
+flesh but made alive in the spirit, 19 in which he went and proclaimed to the
+spirits in prison, 20 because they formerly did not obey, when God’s patience
+waited in the days of Noah, while the ark was being prepared, in which a few,
+that is, eight persons, were brought safely through water. 21 Baptism, which
+corresponds to this, now saves you, not as a removal of dirt from the body but
+as an appeal to God for a good conscience, through the resurrection of Jesus
+Christ, 22 who has gone into heaven and is at the right hand of God, with
+angels, authorities, and powers having been subjected to him.
+
+The Holy Bible: English Standard Version (1 Pe 3:18–22). (2016). Crossway
+Bibles.
+
+Notice verse 21 - "Baptism, which corresponds to this"
+Corresponds is the word ἀντίτυπος (antitupos) in Greek, which means "anti-type"
+This means clearly that the type
, or a type, for baptism, is the flood
+narrative... or that baptism is the antitype for the flood
What does this mean for baptism?
+21 Baptism, which
+corresponds to this, now saves you, not as a removal of dirt from the body but
+as an appeal to God for a good conscience, through the resurrection of Jesus
+Christ, 22 who has gone into heaven and is at the right hand of God, with
+angels, authorities, and powers having been subjected to him
+
+Through baptism, we experience with Jesus, resurrection and rule of the angels, +authorities, and power of the world...
+For the disciples listening... are they arguing about when the flood happened? +or if it was a global or local flood?
+No... they are listening to Jesus unpack patterns in the Bible and they hear +him invite them, through a story they know very well, into rule and reign with +him
+ +]]>I'm slowly making my way through some Bible Project classes online because Tim +Mackie is a fantastic teacher and BP has done be a great service by opening +my eyes to the reality of the Biblical narrative and what it means for my life +of faith in Jesus.
+The second session is filled with great points and 10 minutes in I had to jot +this one down...
+Imagine your grandmother's grandmother made a quilt, and passed it down the +family tree. In a sense, that quilt contains history that would pre-date you +but would absolutely have meaning to you... However, you might look for meaning +that was never intended to be present.
+The pieces of the quilt have their own history - there will be material that +might've been part of a dress, or curtains, or bedsheets, or anything else +someone in the family tree found interesting and meaningful for the story they +are telling with their quilt.
+The question of what each of the pieces mean on their own, or in where they +come from is interesting perhaps, but it's not the same question as asking what +those pieces mean now that they have been curated into the family quilt... The +creator(s) of the quilt may repurpose those pieces entirely, and it wouldn't be +"right" for you or me to be upset that one piece of the quilt came from an +article of clothing or cloth associated with something we might not like - the +author (your grandma) repurposed it for that very reason, to change the +meaning and communicate something to you, perhaps something totally different +than what that cloth might've meant before it was added to the quilt.
+The quilt is a curated piece of pieces of fabric - and to bring the metaphor +home very abruptly, so is the Hebrew Bible... the authors of the Hebrew +scripture absolutely repurposed stories and images that were present in their +time and before, but not to make something that is a cheap copy, but to +communicate the story of the actual God of gods, ruling over the world.
+For example - the very beginning of the creationa ccount in Genesis 1 has the +spirit of God hovering over the waters. Without getting into more details than +a short write-up warrants, the waters in ancient thought represent chaos. Not +only that, but there is an older creation account called the Enuma Elish where +their savior god, Marduk, fights the chaos waters (Tiamat) and conquers her +eventually... The thing about the Hebrew narrative is that Yahweh doesn't have +to fight the waters... he subdues with his words because he isn't in tension +with creation, or even with chaos, all things obey him and the chaos waters +that other gods had to fight and die over are no different. So the meaning of +the waters is somewhat consistent across lots of cultures, but Hebrews took the +stories and in essence made them "more true", but at the very least made them +relevant to the story they are/were communicating about the God of gods and +Lord of love - that he is the creator of all things and invites us to partner +with him (as his image-bearers).
+A lot of Christians get upset or skiddish when other stories and cultures get +brought up - as if the Bible had to fall from heaven in their favorite English +translation... but in my opinion that is the silliest and cheapest view of the +Word of God... he chose people out of foreign lands to make an inheritence for +himself, his people, and those people tell his story using images that they +know.
+It's important for us to answer interesting questions but not lose sight of +what's important... The Enuma Elish is an interesting piece, and there's +parallels with the Hebrew bible, but the Hebrew creation account clearly +communicates that Yahweh doesn't have to labor and fight for order, he speaks +order into chaos. That lesson is wholly different from other creation +narratives, but is it derivative of them...
+That used to bother me, but understanding that the authors of the Bible, +carried forth by the guidance of God's spirit, curated these stories and +narratives for God's people to communicate the truest Truths about him and his +love for people help me understand the reality of God partnering with humanity
+I am moving a hefty amount of data to a new ZFS pool due to some corruption and I want to avoid using zfs send/recv
for this just to make sure I don't propagate any corrupted data to my new pool.
I've used rsync
for simple things before but I needed this to be a little smarter and I wanted to see simple progress without flooding my terminal with a billion filenames.
TLDR:
+rsync -aHAX --chmod=Da+s --info=progress2 --inplace --exclude='encrypted/docker/frigate-media' /tank/ /harbor/
-aHAX: Preserves attributes (archive mode, hard links, ACLs, extended attributes). +--chmod=Da+s: Ensures the setgid bit is applied to directories. +--info=progress2: Provides detailed progress information, including overall data transfer stats. +--inplace: Writes directly to the destination file, avoiding temporary files (useful for large files). +--exclude='encrypted/docker/frigate-media': Excludes the specified path (relative to the /tank root). +/tank/ /harbor/: Ensures the contents of /tank are copied directly into /harbor.
+ +]]>I recently have been having significant home server issues, and that's not the point of this - today I learned what D
state is when looking at htop.
Apparently this means "uninterruptable sleep" and it's a dev's nightmare...
+The issue I was having was that some zfs rollback
commands were hung - for hours... I wasn't sure what was going on, rollbacks should be instant but I figured it was just an artifact of these issues.
Turns out I still don't know what locked the disks up but I learned why <C>-c
did nothing...
+the more you know
Luke 2:14 (ESV): 14 “Glory to God in the highest, and on earth peace among those with whom he is pleased!”
+There is a word we probably know - Shalom. It's the Hebrew word we translate often as "peace". But when I hear "peace" I often think about being calm - and that oversimplifies Shalom... I think a more appropriate understanding is "things are as they are supposed to be".
+In the Garden, we see Shalom - the Lord partnering with humanity to steward the earth, to make things as they were supposed to be...
+You all know we messed that up, Shalom was broken and humanity was exiled.
+But we have a Great Healer.
+Jesus is Lord of all, King of Heaven and Earth, Ruler of your lives and mine, and he is the Prince of Peace
+Things in our lives are probably not often as they are supposed to be... We get sick, worry about bills, experience tragedy, and weather the storms of life. But there is hope - confident expectation - that peace already has been, and will continue to be, restored to those whom Jesus chooses, the ones with whom he is pleased.
+John records a lot before telling us about the cross, and I won't recount that in this short edification. But he recalls a hopeful word from the Lord -
+John 16:33 (LEB): 33 I [Jesus] have said these things to you so that in me you may have peace. In the world you have affliction, but have courage! I have conquered the world.”
+This season, and this week of Advent, I pray God presses the reality, and the hope for, peace, the expectation of Shalom, deeper into my heart. I pray the Spirit guides us all to bring the will of God to earth as it is in Heaven
+Finally I pray we may all be given, and accept, the conviction of Paul -
+Romans 8:18 For I consider that the sufferings of this present time are not worthy to be compared with the glory that is to be revealed to us.” Our present trials are not on an equal scale with the glory of heaven
+May the rest, the peace, the Shalom that Jesus gives to his followers be with you all. Amen.
+ +]]>hostnamectl is apparently a linux utility for easily changing your hostname in a variety of ways
+
+❯ hostnamectl --help
+hostnamectl [OPTIONS...] COMMAND ...
+
+Query or change system hostname.
+
+Commands:
+ status Show current hostname settings
+ hostname [NAME] Get/set system hostname
+ icon-name [NAME] Get/set icon name for host
+ chassis [NAME] Get/set chassis type for host
+ deployment [NAME] Get/set deployment environment for host
+ location [NAME] Get/set location for host
+
+Options:
+ -h --help Show this help
+ --version Show package version
+ --no-ask-password Do not prompt for password
+ -H --host=[USER@]HOST Operate on remote host
+ -M --machine=CONTAINER Operate on local container
+ --transient Only set transient hostname
+ --static Only set static hostname
+ --pretty Only set pretty hostname
+ --json=pretty|short|off
+ Generate JSON output
+
+See the hostnamectl(1) man page for details.
+
+I learned there's transient and static hostnames, so that's cool...
+The thing I needed was hostnamectl --static hostname babyblue-aurora
pretty sweet tool
+ +]]>There a lot of flood stories throughout the history of the world, and the Bible +is no different in this regard. God warns Noah of a de-creation event, whereby +he'll start over with humanity via Noah and his family. Noah survives the flood +by abiding in Yahweh and staying close to the One who loves him.
+++Note this reflection doesn't address AT ALL if the flood narrative is a +"real" historical event, whether it's a global or local event, or anything +like that - regardless of those points the Biblical authors used this type of +imagery of chaos waters to communicate themes of judgement and wrath.
+
Jesus, in the Sermon on the Mount with the 2 houses, calls back to the images +of the chaos waters (the winds and the rains). His instruction is that the wise +man who built his house on the rock will survive, but the foolish man builds +his house on the sand and the winds and the rains destroyed it.
+Somewhat obviously this is metaphorical for basing your life on wisdom or +folly. The wisdom is Jesus' teaching which is all based on Yahweh's love for +humanity and his desire to partner with humanity for the good of the whole +earth.
+The simple take-away is for us to survive the winds and the rain, and to say it +more fully - to survive de-creation and destruction, we must live our lives in +a way that revolves around Jesus, the perfect human. He calls us to a greater +humanity, an unbroken humanity, which is unachievable apart from him (just look +around if you doubt this truth).
+It's important to notice though that abiding in the Lord, basing your life on +the rock, doesn't spare you from the wind and the rain. Trials come, life gets +hard, shit hits the fan. The last few weeks for me haven't been my favorite and +I've certainly experienced turmoil in my life but frankly Jesus makes those +things bearable... in a way I can't put enough words to I'll just be reminded of +Paul in Romans 8...
+worthy to be compared with the glory that is to be revealed to us.” Our present
+trials are not on an equal scale with the glory of heaven ```
+
+By God's grace he's molded my heart to be nearly incapable of separating the
+Love God has for me from any trial I face - it's not a magic answer or silver
+bullet to fixing those problems, and it doesn't make them go away, but I know
+the sufferings here aren't even worth comparing to the glory of the Lord. Amen.
+
+<!-- Content Injected to every content markdown footer -->
+
+[github]: https://github.com/rochacbruno/marmite
+
+]]>This is your first post!
+edit on content/{date}-welcome.md
create new markdown files in the content
folder
use marmite --new
to create new content
edit marmite.yaml
to change site settings
edit the files starting with _
in the content
folder to change the layout
or edit the templates to create a custom layout
+read more on marmite documentation
+ +]]>the Logos web app is DISGUSTINGY bright/white - enough to actually ruin your morning...
+Thankfully there's an extension called stylus and some kind folks in the Logos community created a nice dark theme here. You simply install the extension, then go to the userstyles link <-- and click install
. It only changes themes for the sites configured - in this case app.logos.com
24 “Everyone then who hears these words of mine and does them will be like a wise man who built his house on the rock. 25 And the rain fell, and the floods came, and the winds blew and beat on that house, but it did not fall, because it had been founded on the rock. 26 And everyone who hears these words of mine and does not do them will be like a foolish man who built his house on the sand. 27 And the rain fell, and the floods came, and the winds blew and beat against that house, and it fell, and great was the fall of it.
+
+The Holy Bible: English Standard Version (Mt 7:24–27). (2016). Crossway Bibles.
+
+From the visual commentary Tim calls out a few things:
+the rock
is supposed to first call us back to earlier in the sermon when Jesus calls his people "the light of the world" and says "a city on a hill [mountain] cannot be hidden" (Matthew 5:14). The hill [ὄρος | oros] means "mountain" and is a hyperlink to OT teaching of God's people living in the ideal Jerusalem on Mt. Zion. Lots of Hebrew imagery here.
The rain and floods are a callback to the Chaos Waters of the OT (and general ANE thinking). It's a reference to the destructive nature that we humans have unleashed on the world - but the wise man who listens to Jesus lives a life with some amount of protection from those hardships - and ultimate protection from God handing us over to Chaos (destruction).
+I rebooted by server and DNS broke randomly. I have no idea if it was from a kernel update or what but that's the issue with Ubuntu I guess...
+After much toil and none of the other options working for me (sorry to not have those documented here) this is what got me the vic from this SO Post
+sudo mkdir /etc/systemd/resolved.conf.d/ +sudo $EDITOR /etc/systemd/resolved.conf.d/dns_servers.conf
+Most folks probably are good with google (8.8.8.8) and cloudflare (1.1.1.1)
+[Resolve]
+DNS=8.8.8.8 1.1.1.1
+
+But I decided to use tailscale
+[Resolve]
+DNS=100.100.100.100
+
+Then restart systemd-resolved
+sudo systemctl restart systemd-resolved
+ +]]>Plasma shits the bed a little too often on Fedora for me right now but I finally have a quick fix...
+
+sudo killall plasmashell
+
+kstart plasmashell
+
+
+
+]]>enabling DHCP WAN port (dhclient <iface>
)- running the bootstrap script - sh /usr/local/sbin/opnsense-bootstrap
Matthew 7:12
+So then, everything you desire that people do to you, so also you do to them, for this is the Torah and the Prophets
+
+I know there's a lot more to where the texts come from and the varying +traditions in Judaism. But I think at a very high level, Jesus is saying that +we all know, deep down, how to live in harmony but that it requires sacrifice. +He calls us to live sacrificially towards each other, to live in Heaven +today, so we can experience the coming reality if our own resurrection
+ +]]>I use ZFS at home in my homelab for basically all of my storage... Docker uses
+ZFS backend, all my VMs have their .qcow2
images in their own zfs datasets,
+and all my shares are ZFS datasets. I love ZFS but my home hardware presently
+is the opposite of expensive or new... Thankfully I've had a lot of my orginal
+homelab simply given to me but the cost of this is that I didn't put my
+machines together, I didn't choose the disks, and I definitely didn't do the
+research I would've otherwise done had I bankrolled my server personally...
I run glances
on basically all my machines and for the longest time I have
+been seeing big time iowait
issues. Now, since everything was free I've
+largely been able to ignore that however I'm now after some better performance
+which I think means new hardware!
Here is a random screenshot of my glances homepage at time of writing - The
+only major load on my server is some ffmpeg
transcoding (about 60% CPU
+utilization)...
As you can see... there's a lot of issues and I don't even know what they mean.
+I heard about fio through a friend and
+decided to try it out quick. It installs with apt
on ubuntu quick and easy...
Jim Saltar has a good blog post on it here
+Basically it's a handy tool for benchmarking your disks and the blog dives into +what types of metrics matter - it's not just throughput, but also latency, +iops, etc.
+I ran a few basic commands inside a new zfs dataset on my server tank/fio
fio --name=random-write --ioengine=posixaio --rw=randwrite --bs=4k --size=4g --numjobs=1 --runtime=60 --time_based --end_fsync=1 > single-4KiB-random-write.txt
+fio --name=random-write --ioengine=posixaio --rw=randwrite --bs=64k --size=256m --numjobs=16 --iodepth=16 --runtime=60 --time_based --end_fsync=1 > 16-parallel-64KiB-random-write.txt
+fio --name=random-write --ioengine=posixaio --rw=randwrite --bs=1m --size=16g --numjobs=1 --iodepth=1 --runtime=60 --time_based --end_fsync=1 > single-1MiB-random-write.txt
+
+The single 4 KiB random write:
+WRITE: bw=7836KiB/s (8024kB/s), 7836KiB/s-7836KiB/s (8024kB/s-8024kB/s), io=523MiB (548MB), run=68317-68317msec
The 16 parallel 64KiB random writes:
+WRITE: bw=93.9MiB/s (98.4MB/s), 5599KiB/s-6303KiB/s (5734kB/s-6454kB/s), io=7642MiB (8013MB), run=81310-81418msec
The single 1MiB random write:
+WRITE: bw=81.2MiB/s (85.1MB/s), 81.2MiB/s-81.2MiB/s (85.1MB/s-85.1MB/s), io=8177MiB (8574MB), run=100699-100699msec
So I don't fully understand these numbers yet... 80-100 MiB/s isn't super fast +and that's across a parallelized workload... The single threaded workloads have +awful performance so this tells me something is wrong... I have a few ideas...
+ashift
or the blocksize might be way misconfiguredPoints 3 and 4 are less likely given that the write speed does increase in the parallelized job but I'm a newbie so it's time to dive in!
+ +Matthew 7:12
+So then, everything you desire that people do to you, so also you do to them, for this is the Torah and the Prophets
+
+I know there's a lot more to where the texts come from and the varying +traditions in Judaism. But I think at a very high level, Jesus is saying that +we all know, deep down, how to live in harmony but that it requires sacrifice. +He calls us to live sacrificially towards each other, to live in Heaven +today, so we can experience the coming reality if our own resurrection
+ +I am trying to adopt logger.debug
instead of print
but ran into a confusing
+thing in ipython during Advent of Code... I riddled by script with
+logger.debug
(yes after setting logging.setLevel('DEBUG')
) but in ipython
+none of my log messages showed up!
import logging
+
+logger = logging.getLogger(__name__)
+logger.setLevel("DEBUG")
+
+
+Turns out what I was missing was a call to basicConfig
import logging
+
+# forget this and your messages are in the ether! or at least not seen in ipython...
+logging.basicConfig()
+
+logger = logging.getLogger(__name__)
+logger.setLevel("DEBUG")
+
+Want your new messages to show up while iterating on something without killing +the ipython kernel?
+from importlib import reload
+reload(logging) # to make sure you get new log messages you add while developing!
+
+
+
+My moonlander is great, and I just recently added CAPS LOCK back to my keymapping but I've moved it... +At present it is where the ESC kep usually is however I'm trying to match my general moonlander usage with a keymap that fits on a planck.
+Because of this though I keep turning CAPS LOCK on without meaning too by thinking I'm hitting ESC, so while I learn the keymapping I need a way to know if I screwed up...
+Enter
+dotfiles work ×4 ×12 ×4 via v3.8.11(dotfiles) on (us-east-1) proxy
+❯ xset q | grep Caps
+00: Caps Lock: on 01: Num Lock: off 02: Scroll Lock: off
dotfiles work ×4 ×12 ×4 via v3.8.11(dotfiles) on (us-east-1) proxy +❯ xset q | grep Caps +00: Caps Lock: off 01: Num Lock: off 02: Scroll Lock: off
+ +/mysearch\c will match mysearch, MYSEARCH, mYSeArCh...
+ +➜ pihole sudo zfs load-key -L file:///path/to/.zfs.tank.key tank/encrypted/vms/arch-sandbox +➜ pihole sudo zfs change-key -o keylocation=file:///path/to/.zfs.tank.key -o keyformat=raw tank/encrypted/vms/arch-sandbox +Need to load-key for each individual dataset, then change key location to be a file instead of the prompt
+ +Dragons are metaphorical images in the Bible
+Goliath -> armor descriptions +Leviathan
+Dragon slayers can be enticed to become dragons themselves
+Jesus is the great dragon slayer, who doesn't give in to the inticing power of the dragon
+Jesus' victory came through the surrender of his life - which brings him deep +into the dragon's realm, to deliver the ultimate blow
+Reflect
+In the Bible, why is it challenging for humans to slay the dragon? What risks are involved? +The dragon's power is enticing... back to Genesis 3, humans are easy to persuade to do things for personal gain +It's challenging also becauset the dragon is powerful, and humans are not +(without its power or the power of Jesus) so if we stand against it without +the Lord, what hope do we have of victory?
+What are some of the ways that Jesus confronted the “dragon” in his ministry?
+How does Jesus ultimately defeat the “dragon”? How can we follow his example?
+There are several words for similar feelings - example like joy
has several synonyms.
Genesis tells us creation and life bring joy +Psalm 104 - A good bottle of wine is God's gift to bring joy to people's hearts +P#lm 65 - Beautiful things bring joy +Jeremiah 33:11 - Weddings
+Bible shows us that humanity and brokenness mark our world by death and loss
+God's people have reasons in God's faithfulness to be joyful. +Joy in the LORD is not determinmed by current struggles, but by future hope and deliverance
+His birth gives good news and brings great joy
+Matthew 5 - Jesus says to rejoice and be glad when we are persecuted for his Name
+Paul says he chooses joy when he is in jail
+!!! note ""
+Joy is a _choice_
+
+2 Corinthians 6:10 -> Paul is filled with sorrow and yet rejoicing
+!!! success ""
+Christian joy is rooted in future hope and expectation of a Messiah, of
+Jesus, to come again. It is a profound choice, not the result of current
+circumstances
+
+!!! note "1"
+The Israelites choose a path apart from God. As a result, they get exiled
+from their land and dominated by foreign nations. But the prophet Isaiah
+knew that sorrow would not have the final word with these people. He looked
+forward to the day when Yahweh would end pain and corruption to lead them
+into endless, joyful living. Read Isaiah 49:13 and Isaiah 51:11 . What does
+Isaiah tell us about God’s character in these passages? What does Isaiah
+say will happen to God’s people?
+
+!!! scripture "Isaiah 49:13"
+13Shout for joy, O heavens! And rejoice, O earth!
+
+Break forth into joyful shouting, O mountains!
+
+For the Lord has comforted His people
+
+And will have compassion on His afflicted.
+
+!!! scripture "Isaiah 51:11"
+11So the ransomed of the Lord will return
+
+And come with joyful shouting to Zion,
+
+And everlasting joy will be on their heads.
+
+They will obtain gladness and joy,
+
+And sorrow and sighing will flee away.
+
+Isiah tells us that God is good and faithful. He mentions God's past
+faithfulness - For the Lord _has_ comforted His people
as well as future
+faithfulness - So the randomed of the Lord _will_ return...
Isiah leans in on Yahweh's defining nature from Exodus 34:6. God's hesed
, his
+steadfase love, is what is our hope. Otherwise our God is no different than
+any powerful but fickle diety.
Isiah also doesn't, in these short passages, promise or claim a promise of any +kind of temporal happiness - the joy is historical-facing in reflecting on +God's deliverance and future-facing inr reflecting also on God's deliverance. +God's people were still supposed to find this joy in the midst of their bondage.
+!!! note "2"
+The prophet Isaiah looked forward to the coming of Israel’s redeemer. His
+prophecies were fulfilled with the arrival of Jesus. Read Luke 2:9-11 . Why
+were the shepherds afraid? What reasons did the angels give for them to
+rejoice instead?
+
+!!! scripture "Luke 2:9-11"
+9And an angel of the Lord suddenly stood before them, and the glory of the
+Lord shone around them; and they were terribly frightened. 10But the angel
+said to them, “Do not be afraid; for behold, I bring you good news of great
+joy which will be for all the people; 11for today in the city of David
+there has been born for you a Savior, who is Christ the Lord.
+
+Presumably the shepherds were afraid because of the glory of the Lord
. All
+throughout the OT we have examples of God's people fearing this glory,
+specifically on Sinai. Yahweh even tells Moses that he can only be shown
+Yahweh's back due to his glory, and then Moses has to veil his face so that the
+glory of the Lord persisted on him would not terrify the Israelites.
The angels outright said that a Savior has been born, the Messiah has come. +There is no greater cause for joy than the king of creation returning
+!!! note "3"
+Joy can persist in the harshest of circumstances because it depends on God
+and his promises. Read Matthew 5:11-12 , Acts 13:50-52 , and Hebrews 12:1-3
+. According to these passages, what specific truths about God can sustain
+joy even through painful or dire situations?
+
+!!! success ""
+Joy can persist in the harshest of circumstances because it depends on God
+and his promises.
+
+!!! scripture "Matthew 5:11-12"
+11“Blessed are you when people insult you and persecute you, and falsely
+say all kinds of evil against you because of Me. 12Rejoice and be glad, for
+your reward in heaven is great; for in the same way they persecuted the
+prophets who were before you.
+
+!!! scripture "Acts 13:50-52"
+50But the Jews incited the devout women of prominence and the leading men
+of the city, and instigated a persecution against Paul and Barnabas, and
+drove them out of their district. 51But they shook off the dust of their
+feet in protest against them and went to Iconium. 52And the disciples were
+continually filled with joy and with the Holy Spirit.
+
+!!! scripture "Hebrews 12:1-3"
+Jesus, the Example
+
+1Therefore, since we have so great a cloud of witnesses surrounding us, let
+us also lay aside every encumbrance and the sin which so easily entangles
+us, and let us run with endurance the race that is set before us, 2fixing
+our eyes on Jesus, the author and perfecter of faith, who for the joy set
+before Him endured the cross, despising the shame, and has sat down at the
+right hand of the throne of God. 3For consider Him who has endured such
+hostility by sinners against Himself, so that you will not grow weary and
+lose heart.
+
+Harsh treatment of us, particularly for faith, reflects Jesus' life. We stand +with God-incarnate in living for a different kingdom which has negative +consequences for us in the modern age, but obviously not in God's age that's +already here and yet coming.
+Holy Spirit gives us joy
+We have long list of people in history who lived faithful lives, struggled
+with God, experienced pain, and yet were faithful the Lord by God's own
+grace. Similarly we are chosen and favored - the receipients of God's
+hesed
love.
!!! note "4"
+When we see how Jesus’ loving way of life has overcome death itself, joy
+starts to become strangely reasonable. But this doesn’t mean it is wise to
+ignore or suppress sorrow. Read 2 Corinthians 6:3-10 . How did Paul
+integrate both joy and sorrow?
+
+!!! scripture "2 Corinthians 6:3-10"
+3giving no cause for offense in anything, so that the ministry will not be
+discredited, 4but in everything commending ourselves as servants of God, in
+much endurance, in afflictions, in hardships, in distresses, 5in beatings,
+in imprisonments, in tumults, in labors, in sleeplessness, in hunger, 6in
+purity, in knowledge, in patience, in kindness, in the Holy Spirit, in
+genuine love, 7in the word of truth, in the power of God; by the weapons of
+righteousness for the right hand and the left, 8by glory and dishonor, by
+evil report and good report; regarded as deceivers and yet true; 9as
+unknown yet well-known, as dying yet behold, we live; as punished yet not
+put to death, 10as sorrowful yet always rejoicing, as poor yet making many
+rich, as having nothing yet possessing all things.
+
+
+man
can be a pain to read... and there's lots of alternatives out there and one I've just started playing with is cheat
man man
will give you this plus a billion more lines of docs, which is useful when you need it...
MAN(1) Manual pager utils MAN(1)
+
+NAME
+ man - an interface to the on-line reference manuals
+
+SYNOPSIS
+ man [-C file] [-d] [-D] [--warnings[=warnings]] [-R encoding] [-L locale] [-m system[,...]] [-M path] [-S list] [-e extension] [-i|-I] [--regex|--wildcard] [--names-only] [-a] [-u] [--no-subpages] [-P pager] [-r prompt] [-7] [-E encoding] [--no-hyphenation]
+ [--no-justification] [-p string] [-t] [-T[device]] [-H[browser]] [-X[dpi]] [-Z] [[section] page[.section] ...] ...
+ man -k [apropos options] regexp ...
+ man -K [-w|-W] [-S list] [-i|-I] [--regex] [section] term ...
+ man -f [whatis options] page ...
+ man -l [-C file] [-d] [-D] [--warnings[=warnings]] [-R encoding] [-L locale] [-P pager] [-r prompt] [-7] [-E encoding] [-p string] [-t] [-T[device]] [-H[browser]] [-X[dpi]] [-Z] file ...
+ man -w|-W [-C file] [-d] [-D] page ...
+ man -c [-C file] [-d] [-D] page ...
+ man [-?V]
+
+DESCRIPTION
+ man is the system's manual pager. Each page argument given to man is normally the name of a program, utility or function. The manual page associated with each of these arguments is then found and displayed. A section, if provided, will direct man to look
+ only in that section of the manual. The default action is to search in all of the available sections following a pre-defined order ("1 n l 8 3 2 3posix 3pm 3perl 3am 5 4 9 6 7" by default, unless overridden by the SECTION directive in /etc/manpath.config),
+ and to show only the first page found, even if page exists in several sections.
+
+ The table below shows the section numbers of the manual followed by the types of pages they contain.
+
+ 1 Executable programs or shell commands
+ 2 System calls (functions provided by the kernel)
+ 3 Library calls (functions within program libraries)
+ 4 Special files (usually found in /dev)
+ 5 File formats and conventions eg /etc/passwd
+ 6 Games
+ 7 Miscellaneous (including macro packages and conventions), e.g. man(7), groff(7)
+ 8 System administration commands (usually only for root)
+ 9 Kernel routines [Non standard]
+
+ A manual page consists of several sections.
+
+ Conventional section names include NAME, SYNOPSIS, CONFIGURATION, DESCRIPTION, OPTIONS, EXIT STATUS, RETURN VALUE, ERRORS, ENVIRONMENT, FILES, VERSIONS, CONFORMING TO, NOTES, BUGS, EXAMPLE, AUTHORS, and SEE ALSO.
+
+ The following conventions apply to the SYNOPSIS section and can be used as a guide in other sections.
+
+ bold text type exactly as shown.
+ italic text replace with appropriate argument.
+ [-abc] any or all arguments within [ ] are optional.
+ -a|-b options delimited by | cannot be used together.
+ argument ... argument is repeatable.
+ [expression] ... entire expression within [ ] is repeatable.
+
+ Exact rendering may vary depending on the output device. For instance, man will usually not be able to render italics when running in a terminal, and will typically use underlined or coloured text instead.
+
+ The command or function illustration is a pattern that should match all possible invocations. In some cases it is advisable to illustrate several exclusive invocations as is shown in the SYNOPSIS section of this manual page.
+
+EXAMPLES
+ man ls
+ Display the manual page for the item (program) ls.
+
+ man man.7
+ Display the manual page for macro package man from section 7.
+
+cheat man
# To convert a man page to pdf:
+man -t bash | ps2pdf - bash.pdf
+
+# To view the ascii chart:
+man 7 ascii
+
+You get tiny examples to remind you of what you probably are trying to do!
+ +sudo dmidecode -s bios-version
+ +https://www.simplified.guide/linux/disk-health-check
+For ubuntu/debian based distros (which is what I primarly use presently)
+sudo apt update -y && sudo apt install smartmontools -y
lsblk | grep disk
is one way or sudo lshw -c disk
is another
Use a device's logical name such as dev/sda
, not a partition of the disk
sudo smartctl -t short /dev/sda
dotfiles home ×3 ×2 ×2 via v3.10.6(dotfiles) took 11s
+❯ sudo smartctl -t short /dev/sda
+smartctl 7.1 2019-12-30 r5022 [x86_64-linux-5.15.0-48-generic] (local build)
+Copyright (C) 2002-19, Bruce Allen, Christian Franke, www.smartmontools.org
+
+=== START OF OFFLINE IMMEDIATE AND SELF-TEST SECTION ===
+Sending command: "Execute SMART Short self-test routine immediately in off-line mode".
+Drive command "Execute SMART Short self-test routine immediately in off-line mode" successful.
+Testing has begun.
+Please wait 2 minutes for test to complete.
+Test will complete after Fri Sep 23 05:59:39 2022 CDT
+Use smartctl -X to abort test.
+
+sudo smartctl -H /dev/sda
+dotfiles home ×3 ×2 ×2 via v3.10.6(dotfiles)
+❯ sudo smartctl -H /dev/sda
+smartctl 7.1 2019-12-30 r5022 [x86_64-linux-5.15.0-48-generic] (local build)
+Copyright (C) 2002-19, Bruce Allen, Christian Franke, www.smartmontools.org
+
+=== START OF READ SMART DATA SECTION ===
+SMART overall-health self-assessment test result: PASSED
+
+
+
+
+See 02-....yaml in ansible-nas
+ +I've been using paperless-ngx to manage all my documents, but every once in a while I'll get a .docx
file to deal with...
Turns out Libreoffice has a headless mode a pdf
converter built-in!
libreoffice --headless --convert-to pdf /path/to/file.docx --outdir /path/to/output/directory
+
+++ +Note that
+--outdir
is in fact a directory, not the path to a file
AJAX wasn't cutting it, traditional crontab in containers doesn't make much +sense to me, webcron is recommended but I don't want to register with anything +outside my LAN... Turns out you can just spin up an identical container with a +different entrypoint to /cron.sh that does what you need!
+++Note that this is a task in an Ansible playbook - but the docker-compose is straight forward
+
So the only thing you need to make sure of is that all the configuration +options - data volumes, user permissions, etc. are identical between the +containers running the cron job and the one actually hosting NextCloud. This +ensures that the container running cron has proper access to the database and +filesystem - or at least the same access as NextCloud proper.
+- name: Nextcloud Cron Docker Container
+ docker_container:
+ name: nextcloud-cron
+ image: "{{ nextcloud_image }}"
+ pull: true
+ links:
+ - nextcloud-mysql:mysql
+ entrypoint: /cron.sh
+ volumes:
+ - "{{ nextcloud_data_directory }}/nextcloud:/var/www/html:rw"
+ env:
+ MYSQL_HOST: "mysql"
+ MYSQL_DATABASE: "nextcloud"
+ MYSQL_USER: "{{ nextcloud_sql_user }}"
+ MYSQL_PASSWORD: "{{ nextcloud_sql_password }}"
+ NEXTCLOUD_TRUSTED_DOMAINS: "{{ nextcloud_hostname }}.{{ ansible_nas_domain }}"
+ PUID: "{{ nextcloud_user_id }}"
+ PGID: "{{ nextcloud_group_id }}"
+ TZ: "{{ ansible_nas_timezone }}"
+ restart_policy: unless-stopped
+ memory: "{{ nextcloud_memory }}"
+
+
+
+To customize k9s use the skins from catppuccin or the ones k9s supplies
+OUT="${XDG_CONFIG_HOME:-$HOME/.config}/k9s/skins"
+mkdir -p "$OUT"
+curl -L https://github.com/catppuccin/k9s/archive/main.tar.gz | tar xz -C "$OUT" --strip-components=2 k9s-main/dist
+
+Then edit your k9s config
+# ~/.config/k9s/config.yml
+k9s:
+ ui:
+ skin: catppuccin-mocha
+ # ...or another flavor:
+ # skin: catppuccin-macchiato
+ # skin: catppuccin-frappe
+ # skin: catppuccin-latte
+
+ # ...or the transparent variants:
+ # skin: catppuccin-mocha-transparent
+ # skin: catppuccin-macchiato-transparent
+ # skin: catppuccin-frappe-transparent
+ # skin: catppuccin-latte-transparent
+
+Other k9s skins are available here
+ +I recently have been having significant home server issues, and that's not the point of this - today I learned what D
state is when looking at htop.
Apparently this means "uninterruptable sleep" and it's a dev's nightmare...
+The issue I was having was that some zfs rollback
commands were hung - for hours... I wasn't sure what was going on, rollbacks should be instant but I figured it was just an artifact of these issues.
Turns out I still don't know what locked the disks up but I learned why <C>-c
did nothing...
+the more you know
I have often wanted to dive into memory usage for pandas DataFrames when it comes to cloud deployment.
+If I have a python process running on a server at home I can use glances
or a number of other tools to diagnose a memory issue...
+However at work I normally deploy dockerized processes on AWS Batch and it's much more challenging to get info on the dockerized process without more AWS integration that my team isn't quite ready for.
+So TIL that I can get some of the info I want from pandas directly!
I didn't realize that df.info()
was able to give me more info than just dtypes and some summary stats...
+There is a kwarg memory_usage
that can configure what you need to get back, so df.memory_usage="deep"
will give you how much RAM any given DataFrame is using!
+Amazing tool for finding issues with joins or renegade source data files.
df = pd.read_csv("cars.csv")
+
+df.info(memory_usage="deep")
+
+
+
+pandas.DataFrame
s are pretty sweet data structures in Python.
I do a lot of work with tabular data and one thing I have incorporated into some of that work is automatic data summary reports by throwing the first few, or several relevant, rows of a dataframe at a point in a pipeline into a markdown file.
+Pandas has a method on DataFrames that makes this 100% trivial!
+Say we have a dataframe, df
... then it's literally just: df.to_markdown()
❯ df.head()
+
+ Unnamed: 0 mpg cyl disp hp drat wt qsec vs am gear carb
+0 Mazda RX4 21.0 6 160.0 110 3.90 2.620 16.46 0 1 4 4
+1 Mazda RX4 Wag 21.0 6 160.0 110 3.90 2.875 17.02 0 1 4 4
+2 Datsun 710 22.8 4 108.0 93 3.85 2.320 18.61 1 1 4 1
+3 Hornet 4 Drive 21.4 6 258.0 110 3.08 3.215 19.44 1 0 3 1
+4 Hornet Sportabout 18.7 8 360.0 175 3.15 3.440 17.02 0 0 3 2
+
+
+In ipython I can call the method and get a markdown table back as a string
+
+mental-data-lake new-posts via 3.8.11(mental-data-lake) ipython
+❯ df.head().to_markdown()
+'| | Unnamed: 0 | mpg | cyl | disp | hp | drat | wt | qsec | vs | am | gear | carb |\n|---:|:------------------|------:|------:|-------:|-----:|-------:|------:|-------:|-----:|-----:|-------:|-------:|\n| 0 | Mazda RX4 | 21 | 6 | 160 | 110 | 3.9 | 2.62 | 16.46 | 0 | 1 | 4 | 4 |\n| 1 | Mazda RX4 Wag | 21 | 6 | 160 | 110 | 3.9 | 2.875 | 17.02 | 0 | 1 | 4 | 4 |\n| 2 | Datsun 710 | 22.8 | 4 | 108 | 93 | 3.85 | 2.32 | 18.61 | 1 | 1 | 4 | 1 |\n| 3 | Hornet 4 Drive | 21.4 | 6 | 258 | 110 | 3.08 | 3.215 | 19.44 | 1 | 0 | 3 | 1 |\n| 4 | Hornet Sportabout | 18.7 | 8 | 360 | 175 | 3.15 | 3.44 | 17.02 | 0 | 0 | 3 | 2 |'
+
+
+You can drop that string into a markdown file and using any reader that supports the rendering you'll have a nicely formated table of example data in whatever report you're making!
+Just like markdown, you can export a dataframe to html with df.to_html()
and use that if it's more appropriate for your use case:
+'<table border="1" class="dataframe">\n <thead>\n <tr style="text-align: right;">\n <th></th>\n <th>Unnamed: 0</th>\n <th>mpg</th>\n <th>cyl</th>\n <th>disp</th>\n <th>hp</th>\n <th>drat</th>\n <th>wt</th>\n <th>qsec</th>\n <th>vs</th>\n <th>am</th>\n <th>gear</th>\n <th>carb</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <th>0</th>\n <td>Mazda RX4</td>\n <td>21.0</td>\n <td>6</td>\n <td>160.0</td>\n <td>110</td>\n <td>3.90</td>\n <td>2.620</td>\n <td>16.46</td>\n <td>0</td>\n <td>1</td>\n <td>4</td>\n <td>4</td>\n </tr>\n <tr>\n <th>1</th>\n <td>Mazda RX4 Wag</td>\n <td>21.0</td>\n <td>6</td>\n <td>160.0</td>\n <td>110</td>\n <td>3.90</td>\n <td>2.875</td>\n <td>17.02</td>\n <td>0</td>\n <td>1</td>\n <td>4</td>\n <td>4</td>\n </tr>\n <tr>\n <th>2</th>\n <td>Datsun 710</td>\n <td>22.8</td>\n <td>4</td>\n <td>108.0</td>\n <td>93</td>\n <td>3.85</td>\n <td>2.320</td>\n <td>18.61</td>\n <td>1</td>\n <td>1</td>\n <td>4</td>\n <td>1</td>\n </tr>\n <tr>\n <th>3</th>\n <td>Hornet 4 Drive</td>\n <td>21.4</td>\n <td>6</td>\n <td>258.0</td>\n <td>110</td>\n <td>3.08</td>\n <td>3.215</td>\n <td>19.44</td>\n <td>1</td>\n <td>0</td>\n <td>3</td>\n <td>1</td>\n </tr>\n <tr>\n <th>4</th>\n <td>Hornet Sportabout</td>\n <td>18.7</td>\n <td>8</td>\n <td>360.0</td>\n <td>175</td>\n <td>3.15</td>\n <td>3.440</td>\n <td>17.02</td>\n <td>0</td>\n <td>0</td>\n <td>3</td>\n <td>2</td>\n </tr>\n </tbody>\n</table>'
+
+
+My blog will render that html into a nice table! (After removing new line characters)
+Unnamed: 0 | mpg | cyl | disp | hp | drat | wt | qsec | vs | am | gear | carb |
---|---|---|---|---|---|---|---|---|---|---|---|
Mazda RX4 | 21.0 | 6 | 160.0 | 110 | 3.90 | 2.620 | 16.46 | 0 | 1 | 4 | 4 |
Mazda RX4 Wag | 21.0 | 6 | 160.0 | 110 | 3.90 | 2.875 | 17.02 | 0 | 1 | 4 | 4 |
Datsun 710 | 22.8 | 4 | 108.0 | 93 | 3.85 | 2.320 | 18.61 | 1 | 1 | 4 | 1 |
Hornet 4 Drive | 21.4 | 6 | 258.0 | 110 | 3.08 | 3.215 | 19.44 | 1 | 0 | 3 | 1 |
Hornet Sportabout | 18.7 | 8 | 360.0 | 175 | 3.15 | 3.440 | 17.02 | 0 | 0 | 3 | 2 |
I wrote up a little on exporting DataFrames to markdown and html here
+But I've been playing with a web app for with lists and while I'm toying around I learned you can actually give your tables some style with some simple css classes!
+Reminder that if you have a dataframe, df
, you can df.to_html()
to get an HTML table of your dataframe.
Well you can pass some classes
to make it look super nice!
I don't know anything really about CSS so I won't pretend otherwise, but as I was learning about bootstrap that's where I stumbled upon this...
+There are several classes you can pass but I found really good luck with table-bordered
and table-dark
for my use case
df.to_html(classes=["table table-bordered table-dark"])
Unnamed: 0 | mpg | +cyl | disp | hp | drat | +wt | qsec | vs | am | +gear | carb |
---|---|---|---|---|---|---|---|---|---|---|---|
Mazda RX4 | 21.0 | 6 | 160.0 | +110 | 3.90 | 2.620 | 16.46 | +0 | 1 | 4 | 4 |
Mazda RX4 Wag | 21.0 | 6 | 160.0 | +110 | 3.90 | 2.875 | 17.02 | +0 | 1 | 4 | 4 |
Datsun 710 | 22.8 | 4 | 108.0 | +93 | 3.85 | 2.320 | 18.61 | +1 | 1 | 4 | 1 |
Hornet 4 Drive | 21.4 | 6 | 258.0 | +110 | 3.08 | 3.215 | 19.44 | +1 | 0 | 3 | 1 |
Hornet Sportabout | 18.7 | 8 | +360.0 | 175 | 3.15 | 3.440 | +17.02 | 0 | 0 | 3 | 2 | +
Crack open ipython and make a dataframe, then df.to_html(classes=["table table-bordered table-dark"])
, copy the output (minus the quote marks ipython uses to denote the string type) that into my-file.html
, open that up in a browser and be amazed!
++For added effeciency try using pyperclip to copy the output right to your clipboard!
+
pip install pyperclip
and then pyperclip.copy(df.to_html(classes=["table table-bordered table-dark"]))
From my daily driver Ubuntu machine I often open nautilus, dolphin, etc. and delete a file here or there on my NAS... turns out Ubuntu sends thse file to .Trash-100
ON THE NAS so I'm effectively just moving that file and not freeing up any space...
I am working on a project to create a small system monitoring dashboard using the python psutil
library.
The repo is here (if you want actual system monitoring please use netdata).
+I'm using streamlit
and plotly
for the webserver, design, and plotting at the moment.
I needed a way to refresh my plotly charts with a fixed window of time so that I'm able to just see relevant recent data instead of cramming all data for all time into one plot that's 500 pixels wide...
+Checking the length of arrays or lists every time I get a new piece of data feels kind of dumb and I thought "python must have a way to do this"...
+++"This" meaning, update values in a fixed length array without reallocating memory or recreating a copy of the list
+
Enter the deque
.
+It means "double ended queue" and is in general an Iterable
that you can append values to either side or pop values from either side.
The init signature is straightforward enough and I'm sure there's more to them than I know yet but here's how I use it...
+from collections import deque
+
+my_deque = deque([1,2,3])
+
+This gives us my_deque
, created from an iterable, with several familiar methods like index
, extend
, append
, etc.
+However there's some new ones too such as appendleft
and popleft
.
my_deque.appendleft('a')
+print(my_dequqe)
+>>> deque(['a', 1, 2, 3])
+
+my_deque.popleft()
+>>> 'a'
+print(my_deque)
+>>> deque([1, 2, 3])
+
+These are handy ways to manipulate the iterable that I needed for the arrays I plot with plotly!
+See my follow-up to this on using Deques with plotly and streamlit to create a quick "dashboard" with live streaming data!
+ + +Switching to Vim opened a whole new world to me for interacting with a computer +and for getting things done. Before I adopted Vim I used GUIs for everything +because I thought that's how it had to be done... Notes in OneNote, code using +a GUI editor, different notes in TiddlyWiki, slides for work in PowerPoint, +slides for church using Logos, etc... Adopting Vim allowed me to disconnect a +specific tool from the problem that tool is solving - because usually I just +need to write text (notes, code, slides, etc.). Now, very nearly everything I +do is from a text-based and git-based workflow... I put all my notes on +basically anything just in my blog, which is all markdown and deployed to GH +with Markata on every push (living dangerously pushing to main) - and that's +all done easily from Vim with nice syntax highlighting, fast response, +integrated git-plugins, etc.. I keep project-specific task lists just in +markdown files and I have Vim/tmux shortcuts to quickly add todos for any +project (todo list is done with markata todoui) and I can get there fast +because my Vim workflow dovetails with Tmux nicely. Also I can pull that list +up right from the terminal, which I'm already in because Vim.... Vim also +pushed me into the cli more - because Vim is so easily extended with cli tools +and I'm already in the terminal... The builtin functionality also made things +make more sense - no more right-click, find "refactor all" or "rename symbol" +(for some stupid reason)... Vim find-replace is so intuitive and if I need it +extended then I learned what sed was because of Vim. Moving quickly in Vim also +enables me to do my job incredibly fast because I hop into several projects a +day in a coaching role - if I was bound by GUIs I'd be waiting forever for +startup, would lose which GUI instance was which project, etc... Being in the +terminal also made Tmux a trivial choice - now I have 90 tmux sessions, all +named appropriately, ready for me to jump back to and all while keeping the +majority of RAM still free for Chrome. Vim as my IDE also forced me to learn +way more about Python (I'm a python developer primarily), how LSP works, how to +configure a development environment, etc... things I took for granted in my GUI +workflows, or never knew, or worse - thought I knew but deeply misunderstood. +Now that I understand them better, I can coach my peers more effectively even +if they are still in a GUI-based ecosystem.
+Basically, (Neo)Vim actually did change my life and I'm really thankful for it +(maybe that should be the title?)
+ +I use Tmux and Vim for most of my workflow, but I end up with a lot of dangling
+tmux sessions that dont' really need to persist... but killing them one at a
+time is a pain so I wrote a little script-kitty nonsense to pipe multiple
+choices from fzf into tmux kill-session
I defined a little function in my .zshrc
destroy() {
+ tmux list-sessions -F '#{session_name}' | fzf -m | xargs -d $'\n' sh -c 'echo "killing $0"; tmux kill-session -t "$0"; for arg;do echo "killing $arg";tmux kill-session -t "$arg"; done'
+}
+bindkey -s '^d' 'destroy \n'
+
+tmux list-sessions -F '#{session_name}'
prints all my active tmux sessions to the console with the format of just their name
pype.dev main ×1 via v3.8.11(pype.dev) on (us-east-1) proxy
+❯ tmux list-sessions -F '#{session_name}'
+session-01
+session-02
+session-03
+...
+
+Pipe that to fzf -m
to allow multiple choices to be made using tab
Then the nasty bit in xargs
... I echo killing @0
and killing $arg
because the sh -c
passes the first tmux session name to @0
(it's just what bash does) and then the rest get handled in the for loop.
Basically then I get an fzf list to choose multiple tmux sessions to destroy to clean up some RAM!
+ +I moved a computer to a remote location for an off-site backup but when it was powered on it wouldn't show up on any networks. A solution that got me back in was a friend restarting the dhcp client for me:
+sudo dhclient -r -v <interface> && sudo dhclient -v <interface>
+
+
+I rebooted by server and DNS broke randomly. I have no idea if it was from a kernel update or what but that's the issue with Ubuntu I guess...
+After much toil and none of the other options working for me (sorry to not have those documented here) this is what got me the vic from this SO Post
+sudo mkdir /etc/systemd/resolved.conf.d/ +sudo $EDITOR /etc/systemd/resolved.conf.d/dns_servers.conf
+Most folks probably are good with google (8.8.8.8) and cloudflare (1.1.1.1)
+[Resolve]
+DNS=8.8.8.8 1.1.1.1
+
+But I decided to use tailscale
+[Resolve]
+DNS=100.100.100.100
+
+Then restart systemd-resolved
+sudo systemctl restart systemd-resolved
+ +COPY --chown=myuser:mygroup source-file target-file
+ +Add from url??
+ADD http://example.com/cars.csv /tmp/cars.csv
+Unpack automatically!? (.tar, .tar.gz, .tgz, .bz2, .tbz2, .txz, .zip)
+ADD myapp.tar.gz /opt/myapp/
+ +Bought some DDR4-3600 speed RAM but only seeing 2666? Load up the BIOS, find DRAM config or something similar, and make sure to load the XMP profile to get that advertised RAM speed!
+ +I'm currently working on a self-hostable wish list app using FastAPI so we can +finally drop Amazon forever. (The lists funcionality has been super handy for +sharing holiday gift ideas with the famj!)
+FastAPI is an amazing framework for quickly building APIs with Python. I will have a slightly longer post about my brief experience with it coming later...
+One of the last things I needed to figure out in my app was how to generate a +form in a Jinja template with a dynamic number of inputs and then pass all the +inputs to the backend to perform a database operation (my exact case was +removing rows from a table).
+The way to pass back explicit variables is really easy...
+Our form would look like this (I'm using bootstrap CSS)
+<form method="post">
+ <div class="form-check ">
+ <input class="form-check-input" name="item_1" id="itemOne" value="1" type="checkbox">
+ <label class="form-check-label" for="itemOne" > A label for this item </label>
+ </div>
+ <div class="form-check ">
+ <input class="form-check-input" name="item_2" id="itemTwo" value="2" type="checkbox">
+ <label class="form-check-label" for="itemTwo" > A label for item 2 </label>
+ </div>
+
+<button type="submit" class="submit btn btn-xl" >Submit</button>
+</form>
+
+So what is this? This form will have 2 rows with the lables you see in <label> </label>
and checkboxes that when checked would have the value value
in each
+<input>
line.
So our backend might looks something like this...
+I'm keeping all the imports and stuff here to show where they come from but I won't discuss it all here - that'll be in a future post
+import starlette.status as status
+from fastapi import APIRouter, Depends, Form, Request
+from fastapi.encoders import jsonable_encoder
+from fastapi.responses import HTMLResponse, RedirectResponse
+from fastapi.templating import Jinja2Templates
+from sqlalchemy.orm import Session
+
+from app.session.session import create_get_session
+
+router = APIRouter()
+templates = Jinja2Templates(directory="templates/")
+
+@router.post("/my_route/do_something_with_form", response_class=HTMLResponse)
+async def delete_rows(
+ request: Request,
+ item_1: int = Form(...),
+ item_2: int = Form(...)
+ db: Session = Depends(create_get_session),
+):
+ print(item_1) # will just print 1 to the console where fastapi is running if the checkbox was checked
+ print(item_2) # will just print 1 to the console where fastapi is running if the checkbox was checked
+ return RedirectResponse("/", status_code=status.HTTP_302_FOUND)
+
+That's all pretty simple... pass back values by the name in the form...
+What about a form that's generated dynamically? This is my case since I display a row/checkbox for every row in my table so my form looks like this...
+++data is the result of a database query, and item is each row, so the dot notation is the value of each column basically in that row
+
<form method="post">
+ {% for item in data %}
+ <div class="form-check ">
+ <input class="form-check-input" name="item_{{ item.id }}" id="{{ item.name }}" value="{{ item.id }}" type="checkbox">
+ <label class="form-check-label" for="{{ item.id }}" > Label for: {{ item.name }} </label>
+ </div>
+ {% endfor %}
+
+<button type="submit" class="submit btn btn-xl btn-outline-danger" >Remove</button>
+</form>
+
+
+This form generates a row with a checkbox for every item
in data
(in my
+case each item
is an existing row in my table). Now I started scratching my
+head on how to pass an unknown number of inputs to my backend of FastAPI wants
+each input explicitly defined and typed... I can't just pass the form back
+becuase that's not a thing so what's the way to do it?
# same stuff as above, only showing post method here
+@router.post("/my_route/do_something_with_form", response_class=HTMLResponse)
+async def delete_rows(
+ request: Request,
+ db: Session = Depends(create_get_session),
+):
+ form_data = await request.get_form()
+ data = jsonable_encoder(form_data)
+ # data = {"item_1": 1, "item_2": 2, ... "item_N": N}
+ return RedirectResponse("/", status_code=status.HTTP_302_FOUND)
+
+We await request.get_form()
and after encoding the data we get a dictionary with key/value pairs of the name/value from the form!
This took me quite a long time to figure out in part because most of the Google-able resources are still on Flask...
+I look forward to my wish list app maturing and I hope this helps someone working with FastAPI!
+ +!!! Exodusds 34:6
+Compassioante and gracious, slow to anger, overflowing with loyal love and faithfulness
+
+Faithfulness - Emet (can be translated 'Truth') +Related to "Amen" which is untranslated Hebrew expression meaning "that's truth"
+Moses has to hold his hands up when Israel faces the Amalekites. Joshua (and another) bring Moses a rock to sit on and hold is hands up so they could be Emet.
+Describs trustiworthiness
+Exodus 18:21 - Moses apoints leaders are to be "Emet"
+God is a rock - he is faithful, just, and upright
+Hebrew word for trust is He'Emin which is the verb form of Emet
+Abraham considers God Emet, he He'Emin's God and God blesses this by creating Isreal.
+Israel, In Exodus 14:31, He'Emin's God (until they see the gians in Canaan that is)
+1 Kings 1:6 says David walked in Emet with God
+2 Samuel 7:16, God blesses David and says his kingdom will have Emet
+Romans 15:8-9 says Jesus came on behalf of God's faithfulness.
+!!! note "1"
+The Hebrew word “emet” is translated with words like “faithful,”
+“reliable,” “sure,” “trustworthy,” and “amen.” Read aloud Psalm 36:5-6 ,
+Psalm 19:7 , and Psalm 41:13 and discuss what the psalmists are
+communicating in these passages when they use the word “emet.”
+
+!!! scripture "Psalms 36:5-6"
+5Your lovingkindness, O Lord, extends to the heavens,
+
+Your faithfulness reaches to the skies.
+
+6Your righteousness is like the mountains of God;
+
+Your judgments are like a great deep.
+
+O Lord, You preserve man and beast.
+
+!!! scripture "Psalms 19:7"
+7The law of the Lord is perfect, restoring the soul;
+
+The testimony of the Lord is sure, making wise the simple.
+
+!!! scripture "Psalms 41:13"
+13Blessed be the Lord, the God of Israel,
+
+From everlasting to everlasting.
+
+Amen and Amen.
+
+I think the lesson here is pretty simple - God is faithful, full stop. His +faithfulness doesn't look necessarily like how we might want... when I was a +kid I would be upset if my parents didn't respond to me in the way I wanted, +and my kids will certainly share that disappointment. But I am faithful to my +children - sometimes the main issue is a child's outlook on a situation or +worldview. I think that metaphor holds true in relation to humans and Yahweh - +he sees the whole world, we see a part of it so we cannot understand +faithfulness fully, in the same way that my children can't understand my +faithfulness to them fully - even to the point of being upset or thinking that +I'm not being faithful
+!!! note "2"
+God promised the Israelites that he would give them a king of peace that
+would rule forever and ever (e.g. 2 Samuel 7:16). However, Israel’s kingdom
+collapsed and they found themselves without a home or a king. Compare the
+beginning of Psalm 89 (vv. 1-10) with the way it closes (vv. 46-52). What
+do you think it practically looks like to trust God when all seems lost?
+
+!!! scripture "2 Samuel 7:16"
+16Your house and your kingdom shall endure before Me forever; your throne shall be established forever.” ’ ”
+
+!!! scripture "PSALM 89"
+The Lord’s Covenant with David, and Israel’s Afflictions.
+
+A Maskil of Ethan the Ezrahite.
+
+1I will sing of the lovingkindness of the Lord forever;
+
+To all generations I will make known Your faithfulness with my mouth.
+
+2For I have said, “Lovingkindness will be built up forever;
+
+In the heavens You will establish Your faithfulness.”
+
+3“I have made a covenant with My chosen;
+
+I have sworn to David My servant,
+
+4I will establish your seed forever
+
+And build up your throne to all generations.” Selah.
+
+5The heavens will praise Your wonders, O Lord;
+
+Your faithfulness also in the assembly of the holy ones.
+
+6For who in the skies is comparable to the Lord?
+
+Who among the sons of the mighty is like the Lord,
+
+7A God greatly feared in the council of the holy ones,
+
+And awesome above all those who are around Him?
+
+8O Lord God of hosts, who is like You, O mighty Lord?
+
+Your faithfulness also surrounds You.
+
+9You rule the swelling of the sea;
+
+!!! note "3"
+Ultimately, God answers the psalmist’s cries in the person of Jesus. Compare 2 Samuel 7:16
+2 Samuel 7:16
+
+16Your house and your kingdom shall endure before Me forever; your throne shall be established forever.” ’ ”
+
+to Hebrews 1:8-9
+Hebrews 1:8-9
+
+8But of the Son He says,
+
+“Your throne, O God, is forever and ever,
+
+And the righteous scepter is the scepter of His kingdom.
+
+9You have loved righteousness and hated lawlessness;
+
+Therefore God, Your God, has anointed You
+
+With the oil of gladness above Your companions.”
+
+. How does King Jesus embody and fulfill the ancient promises of God (e.g. John 1:14
+John 1:14
+
+The Word Made Flesh
+
+14And the Word became flesh, and dwelt among us, and we saw His glory, glory as of the only begotten from the Father, full of grace and truth.
+
+, Hebrews 3:5-6
+Hebrews 3:5-6
+
+5Now Moses was faithful in all His house as a servant, for a testimony of those things which were to be spoken later; 6but Christ was faithful as a Son over His house—whose house we are, if we hold fast our confidence and the boast of our hope firm until the end.
+
+, and Romans 15:8-9
+Romans 15:8-9
+
+8For I say that Christ has become a servant to the circumcision on behalf of the truth of God to confirm the promises given to the fathers, 9and for the Gentiles to glorify God for His mercy; as it is written,
+
+“Therefore I will give praise to You among the Gentiles,
+
+And I will sing to Your name.”
+
+)?
+
+!!! note "4"
+Read Hebrews 10:22-25
+Hebrews 10:22-25
+
+22let us draw near with a sincere heart in full assurance of faith, having our hearts sprinkled clean from an evil conscience and our bodies washed with pure water. 23Let us hold fast the confession of our hope without wavering, for He who promised is faithful; 24and let us consider how to stimulate one another to love and good deeds, 25not forsaking our own assembling together, as is the habit of some, but encouraging one another; and all the more as you see the day drawing near.
+
+, Hebrews 11
+Hebrews 11
+
+The Triumphs of Faith
+
+1Now faith is the assurance of things hoped for, the conviction of things not seen. 2For by it the men of old gained approval.
+
+3By faith we understand that the worlds were prepared by the word of God, so that what is seen was not made out of things which are visible. 4By faith Abel offered to God a better sacrifice than Cain, through which he obtained the testimony that he was righteous, God testifying about his gifts, and through faith, though he is dead, he still speaks. 5By faith Enoch was taken up so that he would not see death; and he was not found because God took him up; for he obtained the witness that before his being taken up he was pleasing to God. 6And without faith it is impossible to please Him, for he who comes to God must believe that He is and that He is a rewarder of those who seek Him. 7By faith Noah, being warned by God about things not yet seen, in reverence prepared an ark for the salvation of his household, by which he condemned the world, and became an heir of the righteousness which is according to faith.
+
+8By faith Abraham, when he was called, obeyed by going out to a place which he was to receive for an inheritance; and he went out, not knowing where he was going. 9By faith he lived as an alien in the land of promise, as in a foreign land, dwelling in tents with Isaac and Jacob, fellow heirs of the same promise; 10for he was looking for the city which has foundations, whose architect and builder is God. 11By faith even Sarah herself received ability to conceive, even beyond the proper time of life, since she considered Him faithful who had promised. 12Therefore there was born even of one man, and him as good as dead at that, as many descendants as the stars of heaven in number, and innumerable as the sand which is by the seashore.
+
+13All these died in faith, without receiving the promises, but having seen them and having welcomed them from a distance, and having confessed that they were strangers and exiles on the earth. 14For those who say such things make it clear that they are seeking a country of their own. 15And indeed if they had been thinking of that country from which they went out, they would have had opportunity to return. 16But as it is, they desire a better country, that is, a heavenly one. Therefore God is not ashamed to be called their God; for He has prepared a city for them.
+
+17By faith Abraham, when he was tested, offered up Isaac, and he who had received the promises was offering up his only begotten son; 18it was he to whom it was said, “In Isaac your descendants shall be called.” 19He considered that God is able to raise people even from the dead, from which he also received him back as a type. 20By faith Isaac blessed Jacob and Esau, even regarding things to come. 21By faith Jacob, as he was dying, blessed each of the sons of Joseph, and worshiped, leaning on the top of his staff. 22By faith Joseph, when he was dying, made mention of the exodus of the sons of Israel, and gave orders concerning his bones.
+
+23By faith Moses, when he was born, was hidden for three months by his parents, because they saw he was a beautiful child; and they were not afraid of the king’s edict. 24By faith Moses, when he had grown up, refused to be called the son of Pharaoh’s daughter, 25choosing rather to endure ill-treatment with the people of God than to enjoy the passing pleasures of sin, 26considering the reproach of Christ greater riches than the treasures of Egypt; for he was looking to the reward. 27By faith he left Egypt, not fearing the wrath of the king; for he endured, as seeing Him who is unseen. 28By faith he kept the Passover and the sprinkling of the blood, so that he who destroyed the firstborn would not touch them. 29By faith they passed through the Red Sea as though they were passing through dry land; and the Egyptians, when they attempted it, were drowned.
+
+30By faith the walls of Jericho fell down after they had been encircled for seven days. 31By faith Rahab the harlot did not perish along with those who were disobedient, after she had welcomed the spies in peace.
+
+32And what more shall I say? For time will fail me if I tell of Gideon, Barak, Samson, Jephthah, of David and Samuel and the prophets, 33who by faith conquered kingdoms, performed acts of righteousness, obtained promises, shut the mouths of lions, 34quenched the power of fire, escaped the edge of the sword, from weakness were made strong, became mighty in war, put foreign armies to flight. 35Women received back their dead by resurrection; and others were tortured, not accepting their release, so that they might obtain a better resurrection; 36and others experienced mockings and scourgings, yes, also chains and imprisonment. 37They were stoned, they were sawn in two, they were tempted, they were put to death with the sword; they went about in sheepskins, in goatskins, being destitute, afflicted, ill-treated 38(men of whom the world was not worthy), wandering in deserts and mountains and caves and holes in the ground.
+
+39And all these, having gained approval through their faith, did not receive what was promised, 40because God had provided something better for us, so that apart from us they would not be made perfect.
+
+, and Hebrews 12:1-3
+Hebrews 12:1-3
+
+Jesus, the Example
+
+1Therefore, since we have so great a cloud of witnesses surrounding us, let us also lay aside every encumbrance and the sin which so easily entangles us, and let us run with endurance the race that is set before us, 2fixing our eyes on Jesus, the author and perfecter of faith, who for the joy set before Him endured the cross, despising the shame, and has sat down at the right hand of the throne of God.
+
+3For consider Him who has endured such hostility by sinners against Himself, so that you will not grow weary and lose heart.
+
+. After reading these passages, name one example of what it looks like to put our trust in God.
+
+
+ffmpeg -i input.mp4 -map 0 -c:v libx264 -vf format=yuv420p -c:a copy output.mp4
I have a specific need for counting the number of lines in a file quickly. +At work we use S3 for data storage during our Kedro pipeline development, and in the development process we may end up orphaning several datasets. +In order to keep our workspace clean I have a short utility that compares the datasets in a Kedro DataCatalog with the files in the relevant S3 location.
+To get that list I run an internal tool like this:
+kedro our-liter | grep s3 >> orphaned_datasets.txt
+
+This simply parses our internal linter for the lines releated to my s3 linter utility and pipes those lines to a file.
+To get a quick idea of how out of wack a pipeline is I could open the text file in vim, git it with the G
and see what line number I'm on but I'm way too lazy for that...
awk 'END {print NR}' orphaned_datasets.txt
gives me the number of lines and I can alias this to whatever feels appropriate in my zshrc
!
built-ins for the win!
+ +I've had Plug 'hrsh7th/cmp-path'
in my plugins for ever but didn't notice
+until recently that I wasn't getting any filepath completion in vim!
Fuller setup instructions below the TLDR
+Turns out I need to not be a dope and configure nvim-cmp to actually use it...
+local cmp = require'cmp'
+
+cmp.setup({
+ -- removed rest of setup - see the rest in my dotfiles
+ sources = cmp.config.sources({
+ { name = 'path' }, -- This needs to be here!
+ })
+})
+
+For the sake of completeness here is how I currently (May 2022) configure completion in Neovim usin nvim-cmp
I keep all my plugins in plugins.vim
call plug#begin(s:plug_dir)
+Plug 'neovim/nvim-lspconfig'
+Plug 'hrsh7th/cmp-nvim-lsp'
+Plug 'hrsh7th/cmp-buffer'
+Plug 'hrsh7th/cmp-path'
+Plug 'hrsh7th/cmp-cmdline'
+Plug 'hrsh7th/nvim-cmp'
+
+" For ultisnips users.
+<!-- " Plug 'SirVer/ultisnips' -->
+<!-- " Plug 'quangnguyen30192/cmp-nvim-ultisnips' -->
+
+call plug#end()
+
+
+My vim settings are also kept in their own file, settings.vim
+set completeopt=menu,menuone,noselect
+
+
+I have a cmp.lua
file that gets sourced in init.lua
(file structure explained below) for configuring cmp.
+ -- Setup nvim-cmp.
+local cmp = require'cmp'
+
+cmp.setup({
+ snippet = {
+ -- REQUIRED - you must specify a snippet engine
+ expand = function(args)
+ -- For `ultisnips` user.
+ vim.fn["UltiSnips#Anon"](args.body)
+ end,
+ },
+ window = {
+ completion = cmp.config.window.bordered(),
+ },
+ mapping = {
+ ['<Down>'] = cmp.mapping.select_next_item({ behavior = cmp.SelectBehavior.Select }),
+ ['<Up>'] = cmp.mapping.select_prev_item({ behavior = cmp.SelectBehavior.Select }),
+ ['<C-d>'] = cmp.mapping.scroll_docs(-4),
+ ['<C-f>'] = cmp.mapping.scroll_docs(4),
+ ['<C-Space>'] = cmp.mapping.complete(),
+ ['<C-e>'] = cmp.mapping.close(),
+ ['<Tab>'] = cmp.mapping(cmp.mapping.select_next_item(), { 'i', 's' }),
+ ['<CR>'] = cmp.mapping.confirm({
+ behavior = cmp.ConfirmBehavior.Replace,
+ select = true,
+ })
+ },
+ sources = cmp.config.sources({
+ { name = 'nvim_lsp' },
+ { name = 'ultisnips' },
+ { name = 'buffer' },
+ { name = 'path' },
+ { name = 'tmux' },
+ })
+})
+
+
+The sources
section is what was key for this post...
My init.vim
sources plugins and then settings and then finally calls init.lua
.
+init.lua
sources my cmp.lua
file and BANG! auto-completion.
hrsh7th's wiki for nvim-cmp
is here and has example configs as well as a list of sources...
Don't forget to configure and not just install!
+ + +email1@me.com
+somebody_else@gmail.com
+
+
+#! /bin/bash
+# pick multiple emails from list and combine into comma seperated array
+emails=`cat .../emails | fzf -m | sed 's/^\|$/"/g'|paste -sd,`
+
+echo $emails
+
+
+
+Jet Brains has to be specified 'JetBrainsMono Nerd Font Mono'
+ +I just started using FastAPI for a home project and needed to pass back a +dynamic number of values from a form rendered with jinja...
+The jinja templating for rendering HTML based on something like a python iterable is nice and easy
+++data is the result of a database query, and item is each row, so the dot notation is the value of each column basically in that row
+
<form method="post">
+ {% for item in data %}
+ <div class="form-check ">
+ <input class="form-check-input" name="item_{{ item.id }}" id="{{ item.name }}" value="{{ item.id }}" type="checkbox">
+ <label class="form-check-label" for="{{ item.id }}" > Label for: {{ item.name }} </label>
+ </div>
+ {% endfor %}
+
+<button type="submit" class="submit btn btn-xl btn-outline-danger" >Remove</button>
+</form>
+
+
+This form generates a row with a checkbox for every item
in data
(in my
+case each item
is an existing row in my table). it?
The way to pass back all those values is pretty straight forward (after hours of messing around that is!)
+# I hate it when tutorials don't show ALL relevant pieces to the blurb
+import starlette.status as status
+from fastapi import APIRouter, Depends, Form, Request
+from fastapi.encoders import jsonable_encoder
+from fastapi.responses import HTMLResponse, RedirectResponse
+from fastapi.templating import Jinja2Templates
+from sqlalchemy.orm import Session
+
+from app.session.session import create_get_session
+
+router = APIRouter()
+templates = Jinja2Templates(directory="templates/")
+
+@router.post("/my_route/do_something_with_form", response_class=HTMLResponse)
+async def delete_rows(
+ request: Request,
+ db: Session = Depends(create_get_session),
+):
+ form_data = await request.get_form()
+ data = jsonable_encoder(form_data)
+ # data = {"item_1": 1, "item_2": 2, ... "item_N": N}
+ return RedirectResponse("/", status_code=status.HTTP_302_FOUND)
+
+We await request.get_form()
and after encoding the data we get a dictionary with key/value pairs of the name/value from the form!
This took me quite a long time to figure out in part because most of the Google-able resources are still on Flask...
+ +fx is an interactaive JSON viewer for the terminal.
+It's a simple tool built with Charmcli's Bubble Tea.
+The installation with go was broken for me - both via the link and direct from the repo. +Now I'm not a gopher so I don't really know how to fix that.
+Luckily npm install fx
also works and got me what I needed!
Usage is simple... fx <json file>
.
+The Github has a few other ways such as curl ... | fx
etc.
After carefully staging only lines related to a specific change and comitting I suddenly realized I missed one... darn, what do I do?
+Old me would have soft reset my branch to the previous commit and redone all my careful staging... what a PIA...
+New me (credit: ThePrimeagen)...
+# stage other changes I missed
+git commit --amend --no-edit
+
+
+I try to commit a lot, and I also try to write useful tests appropriate for the scope of work I'm focusing on, but sometimes I drop the ball...
+Whether by laziness, ignorance, or accepted tech debt I don't always code perfectly and recently I was dozens of commits into a new feature before realizing I broke something along the way that none of my tests caught...
+Before today I would've manually reviewed every commit to see if something obvious slipped by me (talk about a time suck 😩)
+There must be a better way
+git bisect
is the magic sauce for this exact problem...
You essentially create a range of commits to consider and let git bisect
guide you through them in a manner akin to Newton's method for finding the root of a continuous function.
Start with git bisect start
and then choose the first good
commit (ie. a commit you know the bug isn't present in)
+sandbox bisect-post ×1 via v3.8.11(sandbox) on (us-east-1)
+❯ git bisect start
+
+sandbox bisect-post (BISECTING) ×1 via v3.8.11(sandbox) on (us-east-1)
+❯ git bisect good 655332b
+bisect-post HEAD main ORIG_HEAD
+5b31e1e -- [HEAD] add successful print (52 seconds ago)
+308247b -- [HEAD^] init another loop (77 seconds ago)
+4555c59 -- [HEAD^^] introduce bug (2 minutes ago)
+9cf6d55 -- [HEAD~3] add successful loop (3 minutes ago)
+bcb41c3 -- [HEAD~4] change x to 10 (4 minutes ago)
+3c34aac -- [HEAD~5] init x to 1 (4 minutes ago)
+12e53bd -- [HEAD~6] print cwd (4 minutes ago)
+655332b -- [HEAD~7] add example.py (10 minutes ago) # <- I want to start at this commit
+59e0048 -- [HEAD~8] gitignore (23 hours ago)
+fb9e1fb -- [HEAD~9] add reqs (23 hours ago)
+
+
+
+sandbox bisect-post (BISECTING) ×1 via v3.8.11(sandbox) on (us-east-1)
+❯ git bisect bad 5b31e1e
+bisect-post ORIG_HEAD
+HEAD refs/bisect/good-655332b6c384934c2c00c3d4aba3011ccc1e5b57
+main
+5b31e1e -- [HEAD] add successful print (5 minutes ago) # <- I start here with the "bad" commit
+308247b -- [HEAD^] init another loop (6 minutes ago)
+4555c59 -- [HEAD^^] introduce bug (6 minutes ago)
+9cf6d55 -- [HEAD~3] add successful loop (7 minutes ago)
+bcb41c3 -- [HEAD~4] change x to 10 (8 minutes ago)
+3c34aac -- [HEAD~5] init x to 1 (9 minutes ago)
+12e53bd -- [HEAD~6] print cwd (9 minutes ago)
+655332b -- [HEAD~7] add example.py (14 minutes ago)
+59e0048 -- [HEAD~8] gitignore (23 hours ago)
+fb9e1fb -- [HEAD~9] add reqs (23 hours ago)
+
+
+After starting bisect with a "good" start commit and a "bad" ending commit we can let git to it's thing!
+Git checksout a commit somewhere about halfway between the good and bad commit so you can see if your bug is there or not.
+
+sandbox bisect-post (BISECTING) ×1 via v3.8.11(sandbox) on (us-east-1)
+❯ git bisect bad 5b31e1e
+Bisecting: 3 revisions left to test after this (roughly 2 steps)
+[bcb41c3854e343eade85353683f2c1c4ddde4e04] change x to 10
+
+sandbox HEAD (bcb41c38) (BISECTING) ×1 via v3.8.11(sandbox) on (us-east-1)
+❯
+
+In my example here I have a python script with some loops and print statements - they aren't really relevant, I just wanted an easy to follow git history.
+So I check to see if the bug is present or not either by running/writing tests or replicating the bug somehow.
+In this session commit bcb41c38
is actually just fine, so I do git bisect good
+sandbox HEAD (bcb41c38) (BISECTING) ×1 via v3.8.11(sandbox) on (us-east-1)
+❯ git bisect good
+Bisecting: 1 revision left to test after this (roughly 1 step)
+[4555c5979268dff6c475365fdc5ce1d4a12bd820] introduce bug
+
+
+And we see that git moves on to checkout another commit...
+In this case the next commit is the one where I introduced a bug
+git bisect bad
then gives me:
+sandbox HEAD (4555c597) (BISECTING) ×1 via v3.8.11(sandbox) on (us-east-1)
+❯ git bisect bad
+Bisecting: 0 revisions left to test after this (roughly 0 steps)
+[9cf6d55301560c51e2f55404d0d80b1f1e22a33d] add successful loop
+
+At 4555c597
the script works as expected so one more git bisect good
yields...
sandbox HEAD (9cf6d553) (BISECTING) ×1 via v3.8.11(sandbox) on (us-east-1)
+❯ git bisect good
+4555c5979268dff6c475365fdc5ce1d4a12bd820 is the first bad commit
+commit 4555c5979268dff6c475365fdc5ce1d4a12bd820
+Author: ###########################
+Date: Tue May 3 09:00:00 2022 -0500
+
+ introduce bug
+
+ example.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+
+
+Git sliced up a range of commits based on me saying of the next one was good or bad and localized the commit that introduced a bug into my workflow!
+I didn't have to manually review commits, click through logs, etc... I just let git checkout relevant commits and I ran whatever was appropriate for reproducing the bug to learn when it was comitted!
+ +I started deploying a website to Cloudflare on a branch called pages
. Similar to one of the GH Pages deployment patterns. But when my CI was pushing the branch I couldn't see it locally...
git fetch -a
wasn't pulling any new branches, and git branch -a
was only showing my development and main branches at the remote... so what gives?
I checked my git config, and to this moment I have no idea how this happened but check out my fetch config:
+git config --get remote.origin.fetch
++refs/tags/*:refs/tags/*
+
+So to fix this:
+git config remote.origin.fetch '+refs/heads/*:refs/remotes/origin/*'
+
+Now git fetch -a
works again
> git fetch -a
+
+From github.com:DigitalHarbor7/DigitalHarbor
+ 357a28a..969b027 develop -> origin/develop
+ c052ac9..6d40210 main -> origin/main
+ * [new branch] pages -> origin/pages
+
+
+git config --add --local core.sshCommand 'ssh -i <<<PATH_TO_SSH_KEY>>>'
+ +Hopefully if you write code you are using git, if not go learn the basics of commit
, pull
, push
, and pull request
/merge request
like... right now.
Assuming you are at least familiar with git then you probably work the same way I have since I've been using it.
+git checkout -b my-feature
my-feature
and when ready open a PR into main
git pull main
then git checkout -b another-feature
What if you need to switch between branches for some reason? Often I'm jumping into projects with my co-workers left and right, and I'll have changes that I'm either working on or exploring for them. +When it's time to switch branches I think there's more elegant ways than this but I've always done this:
+stash
the current changespop
the stash
Now, that's not awful but I think worktrees
will make this nicer for a few reasons!
Worktrees are linked branches that have their own directories somewhere on your computer.
+To checkout a branch you don't have to worry about stashing any changes, you just cd
into the directory of that branch.
++The branch can be literally anywhere - it doesn't have to be in the repo folder
+
I've seen ThePrimeagean argue for worktrees for several reasons, see a YT video here
+I'm entirely in Python at the moment, or working with projects that dont' have that kind of requirement (ie. this website). +My reason for wanting worktrees is 3 fold.
+I have a .envrc
I put in every project, but it's not gitignored for reasons that aren't relevant right now...
+If I switch branches I'll stash everything I have at the time, including my .envrc, but then if I forget to pop the stash and I move on and come back then my environment isn't active and I have to go find the stash, pop it, cd out, and then back in and honestly.... that sucks.
+Worktrees will let me have the .envrc in every branch, and if I checkout or switch to a new one, my personal branch is unaffected.
In my team's Kedro workflow we keep a specific directory, the conf
directory at a different spot than the Kedro team has in their templates (the why is outside the scope here).
+The way I preserve every kedro utility for my own benefit is to symlink our conf
to where the Kedro template expects it to be.
+But then everytime I stash changes I lose that symlink so I either just don't have it for the time being or I recreate it which is a hassle
+Worktrees will let me have that present and persistent on all my branches at once.
Because why not!? This workflow feels future-proof, and if my toolset changes down the line then having this worktree centric workflow might be helpful and I'm just prepping for that possibility!
+ +Class link +Classroom notes (Must be on home network)
+This class is not so much a survey of the HB, it is Tim's attempt to distil the +most helpful things for understanding it in a consumable way for laypeople.
+A chunk of this is the other people giving some of their own background. One +lady said something that might be helpful for ministry - "Maybe that thing that +I saw as 'you don't love me' is 'I don't know how to love you'"
+!!! note "how to love"
+Maybe that thing that I saw as 'you don't love me' is 'I don't know how to love you'
+
+!!! danger "Christian coping strategy for the Olt Testament"
+1. Hero-example model
+ * Stories get isolated and distilled down into a simple moral model, where the hero is just the hero.
+ * Veggie-Tales is uber-guilty of this nonsense
+ * There's something correct about this - but the oversimplification usually comes out of a massive re-writting of the stories, then anyone raised on those versions of the story is scaldalized when they read it for real
+
+2. Poltical-authority source
+ * Political parties hijacking "The Bible says X about Y" as a means to harvest authority from a book that many people claim is authoritative.
+
+3. Theology answer book model
+ * Treating the Bible like a dictionary of key/value pairs where keys are questions and values are simple answers.
+ * This ignores narrative, and general literacy.
+ * The instinct may be right - the Bible should profoundly shape my view of everything, but it isn't simple
+
+4. Inspirational-heart-warming model
+ * Verse-a-day calendars
+ * Jermiah 29:11
+
+!!! warning ""
+Are we imposing a set of questions that are foreign to what the authors are
+trying to communicate? do we need to set our cultural agendas aside to just
+listen?
+
+A result of asking the wrong questions is the common story of people's faith being dismantled by reading the Bible
+!!! note "DL Baker - Two Testaments - One Bible"
+One of the most fundamental questions which has faced theology and the
+Church in every age... is whether or not Christianity also needs an Old
+Testament. Is the Old Testament to be thrown away as obsolete, or pre-
+served as a relic from days of yore, or treasured as a classic and read by
+scholars, or used occasionally as a change from the New Testament, or
+kept in a box in case it should be needed some day? Or is the Old Testa-
+ment an essential part of the Christian Bible, with continuing validity along-
+side the New Testament? —
+
+The Bible most often refers to itself as the Writings
+!!! note "Road to Emmaus"
+Jesus confronts a couple guys walking to Emmaus after he is resurrected and
+more or less calls them idiots/fools for not understanding that the
+Writings point to an annointed king who will suffer death for the sake of
+redemption. He's recognized by them once their eyes are opened then he vanishes
+
+Weird stuff
+Paul assumes when writing to Timothy that he, and probably believers in general, are in a community of people who are regularly learning about Yahweh through the Scriptures as a family
+!!! scripture "2 Timothy 3:15-16"
+... and that from childhood you ahve known the sacred writings which are
+able to give you the wisdom that leas to salvation through faith which is
+in Christ Jesus. All Scripture is inspired by God and profitable for
+teaching, for reproof, for correction, for training in righteousness
+
+!!! success ""
+For Paul, the `Scriptures` here are our OT, the Hebrew Bible. For Paul, the HB
+is entirely _wisdom literature_ that leads to salvation through Jesus
+
+The question of "What are the Scriptures?" is covered in the next session
+To answer the question 'How do we read the HB?' we have to ask the question +'Whose book is the HB?'
+Old Testament
is the Christian term for a set of writings that comprise about
+3/4 of the Christian Bible. The authors themselves though refer to those
+writings as the Scriptures
. One time it is called the Old Covenant
by Paul
+, but he's talking about Synagogue readings of the Torah portion in synagogues.
+THe phrase Hebrew Bible
is a modern term that is a bit more neutral.
++So, what is our Bible?
+
!!! scripture "Luke 24:25-27"
+25 And he said to them, “O foolish ones, and slow of
+heart to believe all that the prophets have spoken! 26 Was it not necessary
+that the Christ should suffer these things and enter into his glory?”
+27 And beginning with Moses and all the Prophets, he interpreted to them in
+all the Scriptures the things concerning himself.
+
+++Moses and the Prophets
+
Jweish reference to the books in our OT, in the Hebrew Bible, but the arangement is different...
+!!! note "TaNaK"
+1. T = Torah (first 5 books)
+2. N - Nevi'im (Prophets: Joshua - Kings) [Christians often call these the 'historial books']
+3. K - Ketuvim
+
+| **Torah** | **Pentateuch** |
+| --- | --- |
+| Genesis - Exodus - Leviticus - Numbers Deuteronomy | Genesis - Exodus - Leviticus - Numbers - Deuteronomy |
+| **Nevi'im - The Prophets** | **History** |
+| *Former Prophets* <br/> Joshua - Judges - Samueal - Kings | Joshua - Judges - Ruth <br/> 1-2 Samuel - 1-2 Kings <br/> 1-2 Chronicles <br/> Ezra - Nehemiah - Ester |
+| *Later Prophets* <br/> Isaiah - Jeremiah - Ezekiel <br/> Hosea - Joel - Amos - Obadiah - Jonah - Micah - Nahum - Habakkuk - Zephaniah - Haggai - Zechariah - Malachi | **Poetry** <br/> Job - Psalms - Proverbs - Ecclesiastes - Song of Solomon |
+| **Kethuvim - The Writings** | **Prophets** |
+| Psalms - Job - Proverbs <br/> Ruth - Song of Songs - Ecclesiastes - Lamentations - Esther [The Megillot] <br/> Daniel - Ezra - Nehemiah - Chronicles | Isiah - Jeremiah - Lamentations <br/> Ezekiel - Daniel <br/> Hosea - Joel - Amos - Obadiah - Jonah - Micah - Nahum - Habakkuk - Zephaniah - Haggai - Zechariah - Malachi |
+
+!!! scripture "Luke 11:49–51 (ESV) "
+49 Therefore also the Wisdom of God said, ‘I will send them prophets and
+apostles, some of whom they will kill and persecute,’ 50 so that the blood
+of all the prophets, shed from the foundation of the world, may be charged
+against this generation, 51 from the blood of Abel to the blood of
+Zechariah, who perished between the altar and the sanctuary. Yes, I tell
+you, it will be required of this generation.
+
+++Blood of Abel to the blood of Zechariah...
+
Why would Jesus pick these two events? Abel is murdered on page 4, Zechariah is +murdered in the last part of Chronicles, which in the TaNaK is significant... +Jesus is saying that all the prophets from the beginning of the Scriptures to +the end... All the prophets from A-Z so to speak
+!!! note "Scriptures"
+"Books" as we know it, bound papers with writing on it, called a 'codex'
+wasn't a thing until a couple hundred years post-Jesus... so when the
+authors say "The Scriptures" we need to keep in mind that Jews had the
+scriptures in their minds and hearts, not on paper (save for a couple very
+expensive scrolls). So the structure of the scriptures is also apart of the
+Jewish being... This interaction with the Scriptures is _very very very
+different than how we interact with the Bible_
+
+!!! note "4QMMT"
+"The scrolls of Moses, the words of the prophets, and of David."
+
+!!! note "Philo of Alexandria"
+The laws and the oracles given by inspiration through the prophets and the
+Psalms, and the other scrolls whereby knowledge and piety are increased and
+completed...
+
+- De Vita Contemplatetiva, 25
+
+Around 100-200 AD there was a split in the Jewish community over things like +how the Temple and sacrifices were to be run, etc. A group got kicked out, so +they grabbed some scrolls and went to start what we'd think of as a Monastic +community. Qumran community is where they went, and the scrolls this group +managed are called the Dead Sea Scrolls.
+Out of DSS we have some of the oldest biblical scrolls, they have their own +writings and liturgies since they were all priests basically too.
+The scrolls were hidden in caves before the Romans marched on Qumran. They were +found in the 1940s by a bunch of shepherds. A few showed up online for sale and +that's how we found out about their exitence.... These scrolls give us +pre-Christian Jewish Bible nerds...
+Qumran community didn't know about Jesus - they thought the Messiah would be a +man called The Teacher of Righteousness
+The DSS preserved for us, not only ancient biblical texts, but also the method +by which scrolls were created. They were well-preserved papyrus that was +stiched together - literal stitches. We also have obvious additions from Qumran +community as well as notes from priests and corrections from missed +transcribing.
+The DSS scrolls, being the oldest stitched together set of scrolls, teach us +how scrolls and collections of ancient holy texts were put together. We need to +keep this in mind when we think about where our Christian Bible came from
+The beginning and ending of our books might/are filled with hyperlinks that +call a reader's mind back to other stories. It's the way of linking context and +stories to one another before the writings are in a codex
+++Hyperlinks - language/syntax that remind a reader of antoher scroll - help us +understand the structure of the Hebrew Bible
+
!!! note "A favorite quote from Tim"
+So, you can see I'm interested in a historical question of like the
+collection [Hebrew Bible] was produced by a group of people. What did they
+mean by it? And we can actually know a lot about what they meant and locate
+them and read it the way they wanted us to read it, and pick up what
+they're saying. And, lo and behold, you know, I hope to convince you
+that—and this is all pre-Christian—what's happening here and what this all
+points to and means, fits hand in glove with how Jesus and Paul and the
+apostles talk about these texts.
+So that's different from saying nobody
+knew what these texts meant. The events of Jesus happen, and then we go
+reread it, and it has a whole new meaning that no one has ever imagined. It
+seems to me what actually happened in history was a little more interesting
+and complicated than that. [17:30-18:21]
+
+
+My current homelab setup is not great but it works...
+I boot off an SD card and have 1 SSD and 5 HDDs configured as a JBOD array using a Dell H700 SAS controller. +I cannot boot from a disk using this controller and I can't get the firmware configured in a way to allow it. +So I have 1 SSD as a ZFS array that I've been putting my VM images on, and the 5 HDDs are passed through to a TrueNAS VM where I handle all the ZFS stuff there... kind of meta because I then attached those drives to Proxmox as a CIFS share.
+I have an on-prem backup that is just an old desktop running TrueNAS +I regularly backup the 5 disk RAIDZ2 array from my Proxmox host (managed by a TrueNAS VM) to this backup box
+Currently there is nothing else running on this machine since it's my "backup"
+I was HWA for Jellyfin, but hardware passthrough on the R610 is finicky or broken so Jellyfin is running on an Ubuntu host.
+I could put UBuntu on the R610 and give up "true virtualization". Then I'd manage the SMB share myself. +If I do that then I would get rid of "users" I think, ie. basically forgo least-priviledges since I'm not sure how hard that is to manage.
+On the other hand, direct access to the smb config might make it easier?
+I have the media array on Jellyfin box setup as NFS which was really easy with ZFS... I think SMB would be just as easy.
+1.~~ Nextcloud users and connections.. might be able to just copy the data folder? not sure about the database... try spinning it up in the sandbox vm and see if stuff is there ~~
+2.~~ *arr suite, media profiles and connections to transmission... nothing major~~
+3. transmission - should be deploy and go
+4. ombi and jackett should also just work after some config again
+5. traefik should just work
+6. try to bring up pi-hole from the vm that's already running
+7. heimdall will hopefully just be copying the data folder from the existind docker one'
+8.~~ booksonic can be reconfigured easily~~
+9. portainer... hopefully just copying data folder over?
+10. littlelink, small-group-notes, and blog (at home) will need manually re-deployed once Ubuntu is installed bare-metal
Sanoid/syncoid! Get snapshots going and backups configured with on prem TrueNAS
+Wireguard setup on DA.
+network share on printer for paperless
+4. update peperless in ansible-nas
Just deploy paperless manually... monitor/manage with portainer
booksonic not seeing audiobooks/podcasts
+need a smb user to map nas/documents to the printer for paperless
+wireguard setup now on kps phone, desktop, server (and backup truenas?), and dad's pi
+verify lan services work
Tdar so Jellyfin can work better
Snapshot business might be cause of all the docker containers and docker using +ZFS backend... take everything down and try removing
+Forget filebrowser - going to just use Nextcloud for how it's supposed to be used. +3. Need to organize those files in nextcloud
+Olivet bible stuff going to /tmp/olivet/ -> will move this to nextcloud, ideally by the app via appimage so that the db updates and I don't have to run that occ script +I wnat to organize "home" still in nextcloud
+setup Sanoid
+clean up bitwarden +learn nextcloud sharing -> maybe just give a link to grandma? +rest of todos -> document db and sanoid + zfs.rent
+Check on mom's will +do media thing for church - split vocals on mp3/4
+permission-data playbook changes everything to ansible-nas:ansible-nas but then samba task will re-permission some stuff to root:users... this looks fine
+I had to add group
to the samba config in my playbook to get user auth to work with samba
+This isn't fully working... it works from cli but my python process can't write to a folder in dump after 777.... need to learn more?
+So I can make a file after adding the ansible-nas group to config, but I still cannot make a directory on the smb mount...
ADDING inherit permission = yes
under [global]
in the smb.conf worked!
still not working from printer... +I think what I want is to setup 2 scan options - single docs right to paperless, or combined scans to dump, then manually split and send to paperless
+ +hostnamectl is apparently a linux utility for easily changing your hostname in a variety of ways
+
+❯ hostnamectl --help
+hostnamectl [OPTIONS...] COMMAND ...
+
+Query or change system hostname.
+
+Commands:
+ status Show current hostname settings
+ hostname [NAME] Get/set system hostname
+ icon-name [NAME] Get/set icon name for host
+ chassis [NAME] Get/set chassis type for host
+ deployment [NAME] Get/set deployment environment for host
+ location [NAME] Get/set location for host
+
+Options:
+ -h --help Show this help
+ --version Show package version
+ --no-ask-password Do not prompt for password
+ -H --host=[USER@]HOST Operate on remote host
+ -M --machine=CONTAINER Operate on local container
+ --transient Only set transient hostname
+ --static Only set static hostname
+ --pretty Only set pretty hostname
+ --json=pretty|short|off
+ Generate JSON output
+
+See the hostnamectl(1) man page for details.
+
+I learned there's transient and static hostnames, so that's cool...
+The thing I needed was hostnamectl --static hostname babyblue-aurora
pretty sweet tool
+ +There a lot of flood stories throughout the history of the world, and the Bible +is no different in this regard. God warns Noah of a de-creation event, whereby +he'll start over with humanity via Noah and his family. Noah survives the flood +by abiding in Yahweh and staying close to the One who loves him.
+++Note this reflection doesn't address AT ALL if the flood narrative is a +"real" historical event, whether it's a global or local event, or anything +like that - regardless of those points the Biblical authors used this type of +imagery of chaos waters to communicate themes of judgement and wrath.
+
Jesus, in the Sermon on the Mount with the 2 houses, calls back to the images +of the chaos waters (the winds and the rains). His instruction is that the wise +man who built his house on the rock will survive, but the foolish man builds +his house on the sand and the winds and the rains destroyed it.
+Somewhat obviously this is metaphorical for basing your life on wisdom or +folly. The wisdom is Jesus' teaching which is all based on Yahweh's love for +humanity and his desire to partner with humanity for the good of the whole +earth.
+The simple take-away is for us to survive the winds and the rain, and to say it +more fully - to survive de-creation and destruction, we must live our lives in +a way that revolves around Jesus, the perfect human. He calls us to a greater +humanity, an unbroken humanity, which is unachievable apart from him (just look +around if you doubt this truth).
+It's important to notice though that abiding in the Lord, basing your life on +the rock, doesn't spare you from the wind and the rain. Trials come, life gets +hard, shit hits the fan. The last few weeks for me haven't been my favorite and +I've certainly experienced turmoil in my life but frankly Jesus makes those +things bearable... in a way I can't put enough words to I'll just be reminded of +Paul in Romans 8...
+worthy to be compared with the glory that is to be revealed to us.” Our present
+trials are not on an equal scale with the glory of heaven ```
+
+By God's grace he's molded my heart to be nearly incapable of separating the
+Love God has for me from any trial I face - it's not a magic answer or silver
+bullet to fixing those problems, and it doesn't make them go away, but I know
+the sufferings here aren't even worth comparing to the glory of the Lord. Amen.
+
+<!-- Content Injected to every content markdown footer -->
+
+[github]: https://github.com/rochacbruno/marmite
+
+htop
is a common command line tool for seeing interactive output of your system resource utilization, running processes, etc.
I've always been super confused about htop showing seemingly the same process several times though...
+Just hit H
.... makes the view a lot nicer 😀
I was introduced to tiling window managers through i3, which I use heavily on +one of my machines. I have switched to Pop_OS! at home though, which has a +tiling window mode but the keybindings are not what I'm used to for i3. I +wanted to at least navigate workspaces how I'm used to doing (cause I set +workspace 3 for communication apps, 1 for my terminal, etc...)
+Here's how I set keybindings for:
+<Super> + <number>
sends me to that numbered workspace<Shift> + <Super> + <number>
moves the window I'm focused on to workspace number
#!/bin/bash
+gsettings set org.gnome.mutter dynamic-workspaces false
+gsettings set org.gnome.desktop.wm.preferences num-workspaces 8
+gsettings set org.gnome.shell.keybindings switch-to-application-1 []
+gsettings set org.gnome.shell.keybindings switch-to-application-2 []
+gsettings set org.gnome.shell.keybindings switch-to-application-3 []
+gsettings set org.gnome.shell.keybindings switch-to-application-4 []
+gsettings set org.gnome.shell.keybindings switch-to-application-5 []
+gsettings set org.gnome.shell.keybindings switch-to-application-6 []
+gsettings set org.gnome.shell.keybindings switch-to-application-7 []
+gsettings set org.gnome.shell.keybindings switch-to-application-8 []
+gsettings set org.gnome.shell.keybindings switch-to-application-9 []
+gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-1 "['<Super>1']"
+gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-2 "['<Super>2']"
+gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-3 "['<Super>3']"
+gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-4 "['<Super>4']"
+gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-5 "['<Super>5']"
+gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-6 "['<Super>6']"
+gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-7 "['<Super>7']"
+gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-8 "['<Super>8']"
+gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-9 "['<Super>9']"
+gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-10 "['<Super>0']"
+gsettings set org.gnome.desktop.wm.keybindings move-to-workspace-1 "['<Super><Shift>1']"
+gsettings set org.gnome.desktop.wm.keybindings move-to-workspace-2 "['<Super><Shift>2']"
+gsettings set org.gnome.desktop.wm.keybindings move-to-workspace-3 "['<Super><Shift>3']"
+gsettings set org.gnome.desktop.wm.keybindings move-to-workspace-4 "['<Super><Shift>4']"
+gsettings set org.gnome.desktop.wm.keybindings move-to-workspace-5 "['<Super><Shift>5']"
+gsettings set org.gnome.desktop.wm.keybindings move-to-workspace-6 "['<Super><Shift>6']"
+gsettings set org.gnome.desktop.wm.keybindings move-to-workspace-7 "['<Super><Shift>7']"
+gsettings set org.gnome.desktop.wm.keybindings move-to-workspace-8 "['<Super><Shift>8']"
+gsettings set org.gnome.desktop.wm.keybindings move-to-workspace-9 "['<Super><Shift>9']"
+gsettings set org.gnome.desktop.wm.keybindings move-to-workspace-10 "['<Super><Shift>0']"
+
+
++ + +I use LSIO Jelyfin container for the easy addon they provide for AMD GPUs but I couldn't get trickplay to work with HWE... +There was almost NOTHING on the internet about the error, and all the threads were about BSD systems... +Thankfully someone pos ... + read more → +
+ ++ + +The Flood Story and Jesus +Jesus brings up the Flood story from Genesis just one time (in the recorded teachings we have). +First to set the scene, Jesus and his disciples are visiting the temple, and the disiples are kind of "ooo-ing" and & ... + read more → +
+ ++ + +The Flood Story in the Hebrew Bible +I'm slowly making my way through some Bible Project classes online because Tim +Mackie is a fantastic teacher and BP has done be a great service by opening +my eyes to the reality of the Biblical narrative and what ... + read more → +
+ ++ + +I am moving a hefty amount of data to a new ZFS pool due to some corruption and I want to avoid using zfs send/recv for this just to make sure I don't propagate any corrupted data to my new pool. +I've used rsync for simple things before but I needed ... + read more → +
+ ++ + +Htop +I recently have been having significant home server issues, and that's not the point of this - today I learned what D state is when looking at htop. +htop-d +Apparently this means "uninterruptable sleep" and it's a dev's nightmare... +Co ... + read more → +
+ ++ + +Scripture +Luke 2:14 (ESV): 14 “Glory to God in the highest, and on earth peace among those with whom he is pleased!” +Edification +There is a word we probably know - Shalom. It's the Hebrew word we translate often as "peace". But when I hear ... + read more → +
+ ++ + +hostnamectl is apparently a linux utility for easily changing your hostname in a variety of ways + +❯ hostnamectl --help +hostnamectl [OPTIONS...] COMMAND ... + +Query or change system hostname. + +Commands: + status Show current hostname s ... + read more → +
+ ++ + +There a lot of flood stories throughout the history of the world, and the Bible +is no different in this regard. God warns Noah of a de-creation event, whereby +he'll start over with humanity via Noah and his family. Noah survives the flood +by abiding ... + read more → +
+ ++ + +This is your first post! +Edit this content +edit on content/{date}-welcome.md +Add more content +create new markdown files in the content folder +use marmite --new to create new content +Customize your site +edit marmite.yaml to change site settings +edit ... + read more → +
+ ++ + +the Logos web app is DISGUSTINGY bright/white - enough to actually ruin your morning... +Thankfully there's an extension called stylus and some kind folks in the Logos community created a nice dark theme here. You simply install the extension, then g ... + read more → +
+ ++ + +man can be a pain to read... and there's lots of alternatives out there and one I've just started playing with is cheat +man man will give you this plus a billion more lines of docs, which is useful when you need it... +MAN(1) ... + read more → +
+ ++ + +I got into a pickle where I encrypted the ssh keys I use for my SSH connections on LAN, but then I couldn't run my ansible playbook on my server! ssh-keygen -p and leave the new passphrase blank saved my day (although password protected key files ar ... + read more → +
+ ++ + +Mike Driscoll recently tweeted about making +colored out with pandas DataFrames and I just had to try it for myself +Use Case +First though... why? +My biggest use case is a monitoring pipeline of mine... The details aside, the +output of my pipeline is ... + read more → +
+ ++ + +see samba config on hogwarts + + + read more → +
+ ++ + +email1@me.com +somebody_else@gmail.com + + +#! /bin/bash +# pick multiple emails from list and combine into comma seperated array +emails=`cat .../emails | fzf -m | sed 's/^\|$/"/g'|paste -sd,` + +echo $emails + + + + + read more → +
+ ++ + +My Nextcloud woes +I wrote here about setting +up www-data as the owner of any directories you want nextcloud to manage. +However, I regularly struggle wtih permissions issues on my NAS because of the +external storage app anyways so I've decided to jus ... + read more → +
+ ++ + +TIL that when setting up download clients for +radarr/sonarr/lidarr/readarr/bazarr/prowlarr that you can utilize internal DNS +and instead of hardcoding an IP address of your download client server, can use +just the CNAME record (ie. instead of 172.10 ... + read more → +
+ ++ + +I ran out of space on the SSD in my server when doing some file transfers but only 100GB was used of a 256 GB SSD? +LVM +When installing Ubuntu live server the default option for how to partition the +disk (in my experience) has been to setup an LVM gr ... + read more → +
+ ++ + +When working with tdarr remote nodes, they need to have access not only to the +same libraries but also the same transcode cache as the server otherwise the +transcodes will fail... +Network Setup +To explain I'll give a brief overview of my home setup + ... + read more → +
+ ++ + +I use portainer to monitor my docker applications at home. I like that it shows me which ports are mapped where for every container all in one view but every time I click on a port (assuming it'll take me to that application via LAN) it goes to 0.0. ... + read more → +
+ ++ + +I get https URLs and domain resolution at home with pihole's DNS/CNAME records + + + read more → +
+ ++ + +Look at notes in home-server... apt repos, zfs, etc. + + + read more → +
+ ++ + +See 02-....yaml in ansible-nas + + + read more → +
+ ++ + +I am revamping my home server and bumped myself early up to Jammy Jellyfish... +however to my peril I reused my netplan config and after hitting my server with +the 'ol netplan apply I lost connection... +DNS still seemed to kinda work externally, but ... + read more → +
+ ++ + + +Setup admin +External Storage extension +Add my nas zfs dataset +chown -R www-data:www-data on anything nextcloud uploads to. + + + + read more → +
+ ++ + +I have list [True, False, False, True] and another list [1, 2, 3, 4] and a use case where I want to filter list 2 based on list 1 to remove values that line up with the element False in list 1.... so the outcome will be [1, 4]. list(compress(list2, ... + read more → +
+ ++ + +TL;DR +As the nextcloud docs say... if you want to write to an external volume that +location has to be writeable by the user/group www-data on the host system... +so if that makes sense to you then this TIL probably isn't a ton of value.. if +not howev ... + read more → +
+ ++ + +In vim G clog % does a git clog {current file}. You get every commit that the target file is apart of (so there might be info in those commits unrelated) + + + read more → +
+ ++ + +As I was cleaning up my NAS recently I noticed that I ran out of storage even +though my disk usage looked pretty low... turns out I was keeping a mega-ton of +ZFS snapshots and due to my own ignorance at the time didn't realize the +storage cost of th ... + read more → +
+ ++ + +From my daily driver Ubuntu machine I often open nautilus, dolphin, etc. and delete a file here or there on my NAS... turns out Ubuntu sends thse file to .Trash-100 ON THE NAS so I'm effectively just moving that file and not freeing up any space... + ... + read more → +
+ ++ + +I started my homelab journey being super naive about ZFS and how to manage the +filesystem... that bit me in the butt when transfering a ton of files out of +folders and into datasets because ZFS is copy on write so I was essentially +duplicating my st ... + read more → +
+ ++ + +:PlugSnapshot, :w ~/dotfiles/nvim/snapshot.vim... keep your config safe with git! + + + read more → +
+ ++ + +I've had Plug 'hrsh7th/cmp-path' in my plugins for ever but didn't notice +until recently that I wasn't getting any filepath completion in vim! +Fuller setup instructions below the TLDR +TL;DR +Turns out I need to not be a dope and configure nvim-cmp to ... + read more → +
+ ++ + +I just started using FastAPI for a home project and needed to pass back a +dynamic number of values from a form rendered with jinja... +Dynamic Values +The jinja templating for rendering HTML based on something like a python iterable is nice and easy + + ... + read more → +
+ ++ + +I'm currently working on a self-hostable wish list app using FastAPI so we can +finally drop Amazon forever. (The lists funcionality has been super handy for +sharing holiday gift ideas with the famj!) +FastAPI +FastAPI is an amazing framework for quick ... + read more → +
+ ++ + +If you use vim-plug for managing your vim plugins, do yourself a favor and snapshot your plugins before upgrading! +:PlugSnapshot creates a vim.snapshot file that you can use to restore your plugin versions with vim -S snapshot.vim +The snapshot file ... + read more → +
+ ++ + +TODO +title = "my Title" +eval('"my" in title') + +>>> True + + +print("hello, world"); print("formatting") + + + + read more → +
+ ++ + +TODO + +import os + +import boto3 +import pytest +from moto import mock_s3 + +MY_BUCKET = "bucket" +# BAD PREFIX +MY_PREFIX = "bucket/project/data/layer/dataset/" + + +@pytest.fixture(scope="function") +def aws_credentials(): + &qu ... + read more → +
+ ++ + +I wrote up a little on exporting DataFrames to markdown and html here +But I've been playing with a web app for with lists and while I'm toying around I learned you can actually give your tables some style with some simple css classes! +To HTML +Remind ... + read more → +
+ ++ + +Pandas +pandas.DataFrames are pretty sweet data structures in Python. +I do a lot of work with tabular data and one thing I have incorporated into some of that work is automatic data summary reports by throwing the first few, or several relevant, rows ... + read more → +
+ ++ + +Amazon has crossed the line with me just one too many times now so we are looking to drop them like every other Big Tech provider.... +However, one key feature of Amazon that has been so useful for us is Lists... We can just maintain a list for each ... + read more → +
+ ++ + +I try to commit a lot, and I also try to write useful tests appropriate for the scope of work I'm focusing on, but sometimes I drop the ball... +Whether by laziness, ignorance, or accepted tech debt I don't always code perfectly and recently I was do ... + read more → +
+ ++ + +TL;DR +pandas.Series.str.contains accepts regular expressions and this is turned on by default! +Use case +We often need to filter pandas DataFrames based on several string values in a Series. + +Notice that sweet pyflyby import 😁! + +sandbox main via 3 ... + read more → +
+ ++ + + + + read more → +
+ ++ + +htop is a common command line tool for seeing interactive output of your system resource utilization, running processes, etc. +I've always been super confused about htop showing seemingly the same process several times though... +The Fix... +Just hit H ... + read more → +
+ ++ + +Unpacking iterables in python with * is a pretty handy trick for writing code that is just a tiny bit more pythonic than not. +arr: Tuple[Union[int, str]] = (1, 2, 3, 'a', 'b', 'c') + + +print(arr) +>>> (1, 2, 3, 'a', 'b', 'c') + +# the * unpacks ... + read more → +
+ ++ + +pipx is a tool I've been using to solve a few problems of mine... + +pinning formatting tools like black, flake8, isort, etc. to the same version for all my projects +keeping virtual environments clean of things like cookiecutter +python utilities I wan ... + read more → +
+ ++ + +fx is an interactaive JSON viewer for the terminal. +It's a simple tool built with Charmcli's Bubble Tea. +Installation +The installation with go was broken for me - both via the link and direct from the repo. +Now I'm not a gopher so I don't really kno ... + read more → +
+ ++ + +I use Jellyfin at home for serving up most of our media - movies and shows etc. +My dream is to have a GPU capable of transcoding any and all of our media for smooth playback on any device... +Now, I thought I'd have that by now with my Nvidia Quadro ... + read more → +
+ ++ + +Type hinting has helped me write code almost as much, if not more, than unit testing. +One thing I love is that with complete type hinting you get a lot more out of your LSP. +Typing dictionaries can be tricky and I recently learned about TypedDict to ... + read more → +
+ ++ + +I've started using Terraform to manage Snowflake infrastructure at work. +I'm still a noobie but I've got a workflow that I think makes sense... +Here's the directory setup for a simple project with some databases, schemas, and tables to manage. +terra ... + read more → +
+ ++ + +My moonlander is great, and I just recently added CAPS LOCK back to my keymapping but I've moved it... +At present it is where the ESC kep usually is however I'm trying to match my general moonlander usage with a keymap that fits on a planck. +Because ... + read more → +
+ ++ + +My current homelab setup is not great but it works... +Proxmox on PowerEdge R610 +I boot off an SD card and have 1 SSD and 5 HDDs configured as a JBOD array using a Dell H700 SAS controller. +I cannot boot from a disk using this controller and I can't ... + read more → +
+ ++ + +I often struggle to remember the correct way to do and type comparisons when working in pandas. +I remember learning long long ago that and and & are different, the former being lazy boolean evaluation whereas the latter is a bitwise operation. +I ... + read more → +
+ ++ + +I have a specific need for counting the number of lines in a file quickly. +At work we use S3 for data storage during our Kedro pipeline development, and in the development process we may end up orphaning several datasets. +In order to keep our worksp ... + read more → +
+ ++ + +I have a post on starship where I have some notes on how I use starship to make my zsh experience great with a sweet terminal prompt. +Now... I spend quite a bit of time in ipython every day and I got kind of sick of the vanilla experience and wanted ... + read more → +
+ ++ + +Did you know you can spell check in Vim?! + + + + Vim Spell check + + + Without... + Here is a missspelled word. + <h3>With!</h3> + <p>Here is a <u>missspelled</u> word.</p> + + + +What is this magi ... + read more → +
+ ++ + +polybar is an awesome and super customizable status bar for your desktop environment. +I use it with i3-gaps on Ubuntu for work and it makes my day just that much better to have a clean and elegant bar with the things in it that I care about. +The Git ... + read more → +
+ ++ + +I am working on a project to create a small system monitoring dashboard using the python psutil library. +The repo is here (if you want actual system monitoring please use netdata). +I'm using streamlit and plotly for the webserver, design, and plotti ... + read more → +
+ ++ + +Streamlit +I use streamlit for any EDA I ever have to do at work. +It's super easy to spin up a small dashboard to filter and view dataframes in, live, without the fallbacks of Jupyter notebooks (kernels dying, memory bloat, a billion "Untitled N ... + read more → +
+ ++ + +If you spend time in the terminal then you'll want it to look somewhat pleasing to the eye. +I used to ssh into servers with no customization, use vi to edit a file or two, then get back to my regularly scheduled programming in VS C**e... +One of the ... + read more → +
+ ++ + +Self-hosting 1 or several media servers is another common homelab use-case. +Getting content for your media servers is up to you, but I'll show a few ways here to get content somewhat easily! +YouTube Disclaimer at Bottom +you-get +you-get is a nice cli ... + read more → +
+ ++ + +EDA +I work with data a lot, but the nature of my job isn't to dive super deep into a small amount of datasets, +I'm often jumping between several projects every day and need to just get a super quick glance at some tables to get a high level view. +Wh ... + read more → +
+ ++ + +NAS +One of the most common use cases for self-hosting anything is a file share system. +I have been a fan of TrueNAS for a while. +I currently use TrueNAS Core at home, and plan to consider transitioning to TrueNAS Scale soon. +Blog post forthcoming on ... + read more → +
+ ++ + +I like to keep my workspace clean and one thing that I don't personally love looking at is the __pycache__ directory that pops up after running some code. +The *.pyc files that show up there are python bytecode and they are cached to make subsequent ... + read more → +
+ ++ + +Mike Driscoll has been posting some awesome posts about psutil lately. +I'm interested in making my own system monitoring dashboard now using this library. +I don't expect it to compete with Netdata or Glances but it'll just be for fun to see how Pyth ... + read more → +
+ ++ + +If you work with a template for several projects then you might sometimes need to do the same action across all repos. +A good example of this is updating a package in requirements.txt in every project, or refactoring a common module. +If you have sev ... + read more → +
+ ++ + +VPN +Virtual Private Networks are a big deal, and this shouldn't be considered anything even close to a guide on using them. +Here are just my notes and some setup for how I use wireguard at home. +Wireguard +Wireguard is an awesome peer-to-peer VPN tun ... + read more → +
+ ++ + +Git +Hopefully if you write code you are using git, if not go learn the basics of commit, pull, push, and pull request/merge request like... right now. +Assuming you are at least familiar with git then you probably work the same way I have since I've ... + read more → +
+ ++ + +ABCMeta +I don't do a lot of OOP currently, but I have been on a few heavy OOP projects and this ABCMeta and abstractmethod from abc would've been super nice to know about! +If you are creating a library with classes that you expect your users to exte ... + read more → +
+ ++ + +Being lazy +I almost exclusively use Python for my job and have been eye-balls deep in it for almost 5 years but I really lack in-depth knowledge of builtins. +I recently learned of an awesome builtin called calendar that has way more than I know abo ... + read more → +
+ ++ + +I am personally trying to use logger instead of print in all of my code, +however I learned from [@Python-Hub] that you can align printouts using print with f-strings!. +This little python script shows how options in the f-string can format the printo ... + read more → +
+ ++ + +I have often wanted to dive into memory usage for pandas DataFrames when it comes to cloud deployment. +If I have a python process running on a server at home I can use glances or a number of other tools to diagnose a memory issue... +However at work ... + read more → +
+ ++ + +I run pi-hole at home for ad blocking and some internal DNS/DHCP handling. +pi hole posts on the way +One thing I've never put too much thought in is asking "how well am I doing at blocking?" +There's lots of ways to measure that depending on ... + read more → +
+ ++ + +I host a lot of services in my homelab, but they're mostly dockerized applications so I have never had to care much about how content gets served up. +Today I had several little concepts click into place regarding webservers, and it was a similar exp ... + read more → +
+ ++ + +I wanted a quick way to generate an index.html for a directory of html files that grows by 1 or 2 files a week. +I don't know any html (the files are exports from my tiddlywiki)... +tree is just the answer. +Say I have a file structure like this: +./htm ... + read more → +
+ ++ + +Traefik +If you don't know about traefik and you need a reverse-proxy then you might want to check it out. +I used to use nginx for my reverse proxy but the config was over my head, and once it was working I was afraid to touch it. +Traefik brings a lo ... + read more → +
+ ++ + +On my team we often have to change data types of columns in a pandas.DataFrame for a variety of reasons. +The main one is it tends to be an artifact of EDA whereby a file is read in via pandas but the data types are somewhat wonky (ie. dates show up ... + read more → +
+ ++ + +Tiddly Wiki is a great note taking utility for organizing non-linear notes. +I used it to replace my OneNote workflow and my only complaint is I don't have an easy way to access and edit my tiddlers (posts) if I'm not at home. +The tiddlywiki is just ... + read more → +
+ ++ + +I ran into an issue where I had some copy-pasta markdown tables in a docstring but the generator I used to make the table gave me tabs instead of spaces in odd places which caused black to throw a fit. +Instead of manually changing all tabs to spaes, ... + read more → +
+ ++ + +Check out stow for a brief introduction to stow +What if I want to stow a package somewhere else? +Boom, that's where -t comes in... +Maybe I don't like having my dotfiles repo at $HOME and instead I want it in ~/git or ~/personal just to stay organize ... + read more → +
+ ++ + +After carefully staging only lines related to a specific change and comitting I suddenly realized I missed one... darn, what do I do? +Old me would have soft reset my branch to the previous commit and redone all my careful staging... what a PIA... +Ne ... + read more → +
+ ++ + +Stow is a great tool for managing dotfiles. My usage looks like cloning my dotfiles to my home directory, setting some environment variables via a script, then stowing relevant packages and boom my config is good to go... +cd ~ +git clone <my dotfi ... + read more → +
+ ++ + +Sometimes I need to manually set a static IP of a Linux machine. I generally run the latest version of Ubuntu server in my VMs at home. +In Ubuntu 20 I'm able to change up /etc/netplan/<something>.yml +network: + version: 2 + ethernets: + enp0 ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +Context +24 “Everyone then who hears these words of mine and does them will be like a wise man who built his house on the rock. 25 And the rain fell, and the floods came, and the winds blew and beat on that house, but it did not fall, because it had ... + read more → +
+ ++ + +I rebooted by server and DNS broke randomly. I have no idea if it was from a kernel update or what but that's the issue with Ubuntu I guess... +After much toil and none of the other options working for me (sorry to not have those documented here) thi ... + read more → +
+ ++ + +Plasma shits the bed a little too often on Fedora for me right now but I finally have a quick fix... + +sudo killall plasmashell + +kstart plasmashell + + + + + read more → +
+ ++ + +enabling DHCP WAN port (dhclient <iface>)- running the bootstrap script - sh /usr/local/sbin/opnsense-bootstrap + + + read more → +
+ ++ + +Matthew 7:12 +So then, everything you desire that people do to you, so also you do to them, for this is the Torah and the Prophets + +What do I desire that people "do to [me]"? + +Help if I need it - I want to live in a world where humans are h ... + read more → +
+ ++ + +I woke up to faulty internet and after some troubleshooting it turns out the +root zfs dataset that OPNSense boots from got corrupted... + +PRO-TIP - Auto backup your OPNSense config to Google Drive, git, or +nextcloud... But if you won't then at least ... + read more → +
+ ++ + +Passage +Why do you see the speck in the eye of your brother, but you don't perceive the +beam in your own eye? + +Or how can you say to your brother, "Allow me to take out the speck from your +eye," and look, the beam is in your eye! + +Hypocrit ... + read more → +
+ ++ + +This morning I finally felt some motivation for a short Bible Project video. The app is great (💯 would recommend) and gives me daily reminders that are unobtrusive. +The passage is Matthew 7:1-2 +Do not judge so tha tyou will not be judged. Because wi ... + read more → +
+ ++ + +Add from url?? +ADD http://example.com/cars.csv /tmp/cars.csv +Unpack automatically!? (.tar, .tar.gz, .tgz, .bz2, .tbz2, .txz, .zip) +ADD myapp.tar.gz /opt/myapp/ + + + read more → +
+ ++ + +COPY --chown=myuser:mygroup source-file target-file + + + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +<!doctype html> + + + + + + + +Personal — Theology and Tech + General Stuff + +/* +Basic styles used before we boot up the parsing engine +*/ +/* +Error message and password prompt +*/ +.tc-error-form { +font-family: sans-serif; +color: #fff; +z-index: 20000; +po ... + read more → +
+ ++ + +I was using a fun LaTex-based project for managing my resume called AltaCV. I loved the customization and was familiar with Tek from school. However, I update my resume so infrequently that anytime I'd hop back to it I'd have to remember how to work ... + read more → +
+ ++ + +When connecting from my phone to jellyfin I'm seeing some interesting patterns. +Scenarios +Tailscale IP of phone is listed as local network to jellyfin +Wifi: off +Tailscale: on +Use exit node: on +LAN access: on +Jellyfin: LAN IP +Jellyfin sees 192.168.1. ... + read more → +
+ ++ + +https://forum.proxmox.com/threads/update-error-with-coral-tpu-drivers.136888/#post-608975 I lost TPU for frigate, this saved me ass + + + read more → +
+ ++ + +Jet Brains has to be specified 'JetBrainsMono Nerd Font Mono' + + + read more → +
+ ++ + +To customize k9s use the skins from catppuccin or the ones k9s supplies +OUT="${XDG_CONFIG_HOME:-$HOME/.config}/k9s/skins" +mkdir -p "$OUT" +curl -L https://github.com/catppuccin/k9s/archive/main.tar.gz | tar xz -C "$OUT" ... + read more → +
+ ++ + +TL;DR +I've been using kanboard as a self-hosted kanban board. It's keeping me focused on Digital Harbor when I'd rather be doing something less productive. +My TODOs +Here's the thing about my TODOs... they're everywhere. I've tried a crazy amount of ... + read more → +
+ ++ + +I started deploying a website to Cloudflare on a branch called pages. Similar to one of the GH Pages deployment patterns. But when my CI was pushing the branch I couldn't see it locally... +git fetch -a wasn't pulling any new branches, and git branch ... + read more → +
+ ++ + +git config --add --local core.sshCommand 'ssh -i <<<PATH_TO_SSH_KEY>>>' + + + read more → +
+ ++ + +Video +Sermon on the Mount +3 chapters filled with phrases that are very well-known in our culture +Phrases + +Love your neighbor as yourself +Do to others what you would have them do to you +You are the salt of the earth +You can’t serve both God and money ... + read more → +
+ ++ + +I moved a computer to a remote location for an off-site backup but when it was powered on it wouldn't show up on any networks. A solution that got me back in was a friend restarting the dhcp client for me: +sudo dhclient -r -v <interface> & ... + read more → +
+ ++ + +Dragons are metaphorical images in the Bible +Goliath -> armor descriptions +Leviathan +Dragon slayers can be enticed to become dragons themselves +Jesus is the great dragon slayer, who doesn't give in to the inticing power of the dragon + +calming the ... + read more → +
+ ++ + +https://forum.opnsense.org/index.php?topic=8783.0 + + + read more → +
+ ++ + +Exec in as www-data and run ./occ groupfolders:scan folder_id -v (the -v to see what it's doing) + + + read more → +
+ ++ + +lsof | grep /tank/nas shows me what is using my nas at any time! + + + read more → +
+ ++ + +➜ pihole sudo zfs load-key -L file:///path/to/.zfs.tank.key tank/encrypted/vms/arch-sandbox +➜ pihole sudo zfs change-key -o keylocation=file:///path/to/.zfs.tank.key -o keyformat=raw tank/encrypted/vms/arch-sandbox +Need to load-key for each individu ... + read more → +
+ ++ + +I've been using paperless-ngx to manage all my documents, but every once in a while I'll get a .docx file to deal with... +Turns out Libreoffice has a headless mode a pdf converter built-in! +libreoffice --headless --convert-to pdf /path/to/file.docx ... + read more → +
+ ++ + +ChatGPT Prompt: +Stable Diffusion is an AI art generation model similar to DALLE-2. +Here are some prompts for generating art with Stable Diffusion. +Example: + +A ghostly apparition drifting through a haunted mansion's grand ballroom, illuminated by fli ... + read more → +
+ ++ + + +James +2023 study of the book of James +BP +The Guy +Greek: Iakobos (Jacob in English) +Jacob is one of Jesus' half-brothers who became a leader of the Jerusalem church post-resurrection +The book of James is the legacy of this Jacob's wisdom which was h ... + read more → +
+ ++ + +ffmpeg -i input.mp4 -map 0 -c:v libx264 -vf format=yuv420p -c:a copy output.mp4 + + + read more → +
+ ++ + +I was introduced to tiling window managers through i3, which I use heavily on +one of my machines. I have switched to Pop_OS! at home though, which has a +tiling window mode but the keybindings are not what I'm used to for i3. I +wanted to at least nav ... + read more → +
+ ++ + +I was getting (publickey denied) when trying to push to GH using ssh. When I +tested the connection I saw that a bunch of keys in ``~/.ssh/ were being +attempted +✗ ssh git@github.com -vv + +... + +debug1: Will attempt key: /home/nic/.ssh/id_rsa +debug1: W ... + read more → +
+ ++ + +Playing around with Modal Labs +One of the first things I tried was a regular cron job... +@stub.function( + schedule=modal.Period(minutes=59), secret=modal.Secret.from_name("my-dummy-secret") +) +def say_hi(): + now = time.ctime() + sec ... + read more → +
+ ++ + +ssh-copy-id -i my.key.pub <hostname probably from tailscale> +this makes sure I can run ansible from my desktop against VMs on my server +easily if they have tailscale for the hostname - otherwise use the IP + + + read more → +
+ ++ + +https://nicolasbouliane.com/blog/nextcloud-docker-upgrade-error + + + read more → +
+ ++ + +I have a bash script called syncoid-job which boils down to a barebones - +#!/bin/bash + +syncoid --no-sync-snap --sendoptions=w --no-privilege-elevation $SYNOIC_USER@$SERVER:tank/encrypted/nas tank/encrypted/nas + +I want to run this script hourly but a ... + read more → +
+ ++ + +in /lib/systemd/system/docker.service there is an ExecStart command that got placed there when I setup Docker with Ansible - it threw the -H flag which told the daemon what hosts to setup. But I added the "hosts" key in my daemon.json and ... + read more → +
+ ++ + +I regularly need to edit system config files - take /etc/sanoid/sanoid.conf as +an example... I'll want to play with something but if I don't start Neovim as +root then I get in trouble making edits I can't save! So +suda.vim gives me +:SudaWrite which ... + read more → +
+ ++ + +I'm playing with my ansible playbook in a remote tmux session, and I'm no wiz +so I don't know the ins and outs, but I can't scroll up to get any console log +output that's not already visible on my screen. So I'm starting to end my +commands with | l ... + read more → +
+ ++ + +AJAX wasn't cutting it, traditional crontab in containers doesn't make much +sense to me, webcron is recommended but I don't want to register with anything +outside my LAN... Turns out you can just spin up an identical container with a +different entry ... + read more → +
+ ++ + +Logging instead of printing +I am trying to adopt logger.debug instead of print but ran into a confusing +thing in ipython during Advent of Code... I riddled by script with +logger.debug (yes after setting logging.setLevel('DEBUG')) but in ipython +none ... + read more → +
+ ++ + +I wanted to break down some long lines in a Markdown table cell to make it look +nicer on my blog but \n didn't do anything for me... turns out is the +magic sauce + + + +Column 1 +Column 2 + + + + +Key +Doggo ipsum many pats. Borkdrive borking doggo doing me a ... + read more → +
+ ++ + +Switching to Vim opened a whole new world to me for interacting with a computer +and for getting things done. Before I adopted Vim I used GUIs for everything +because I thought that's how it had to be done... Notes in OneNote, code using +a GUI editor, ... + read more → +
+ ++ + +mkdir s{1..10} will make directories s1, s2, ... s10 in one command! + + + read more → +
+ ++ + +Class link +Classroom notes (Must be on home network) +01 The Shape of the Hebrew Bible +Session 1: What on Earth is the Hebrew Bible? +This class is not so much a survey of the HB, it is Tim's attempt to distil the +most helpful things for understanding ... + read more → +
+ ++ + +/mysearch\c will match mysearch, MYSEARCH, mYSeArCh... + + + read more → +
+ ++ + +Link +Notes +!!! Exodusds 34:6 +Compassioante and gracious, slow to anger, overflowing with loyal love and faithfulness + +Faithfulness - Emet (can be translated 'Truth') +Related to "Amen" which is untranslated Hebrew expression meaning "t ... + read more → +
+ ++ + +zfs list has a flag -r, but if you use zfs driver for docker then you'll get +flooded with every docker volume in the world. zfs list -r -d N will limit the +dept of the print out, so zfs list -r -d 2 gives me tank, tank/encrypted, +tank/encrypted/dock ... + read more → +
+ ++ + +If you think glepnir/lspsaga.nvim config will work with tali5/lspsaga.nvim installed... you're in for a rude awakening. Double check your forks folks! + + + read more → +
+ ++ + +Link to study +Creation +Brougt to completion on the seventh day in Genesis 1. It is the only day that +does not end with 'there evening and there was morning, the Nth day' +Humans were meant to rest with God in his creation forever, but in their +reblli ... + read more → +
+ ++ + +I learned you can embed gifs and stuch in things other than GH personal pages! +So here I'll keep ones I like and might use later +via GIPHY + + + read more → +
+ ++ + +Bought some DDR4-3600 speed RAM but only seeing 2666? Load up the BIOS, find DRAM config or something similar, and make sure to load the XMP profile to get that advertised RAM speed! + + + read more → +
+ ++ + +!!! note "Babyblue v2" +Ryzen 5700x + 32 GB 3200 CL16 RAM + +<a href="https://www.passmark.com/baselines/V10/display.php?id=503041456656"><img src="https://www.passmark.com/baselines/V10/media/503041456656.png" al ... + read more → +
+ ++ + +ssh -v -i ~/.ssh/id_rsa nic@hogwarts +THen we can look at print outs +cat /var/log/auth.log also showed me that I had too wide permissions on files in ~/.ssh -> probably changed from an rsync job + + + read more → +
+ ++ + +link +Chara / Joy +There are several words for similar feelings - example like joy has several synonyms. +Sources +Genesis tells us creation and life bring joy +Psalm 104 - A good bottle of wine is God's gift to bring joy to people's hearts +P#lm 65 - Bea ... + read more → +
+ ++ + +Assuming you have a pool called tank... +And assuming you have an encrypted dataset (See Jim Saltar's short +intro) + +Create a group for permissions - in my case I have one called home +Then if there's anything in /tank/encrypted his it with chgrp -R ho ... + read more → +
+ ++ + +sudo dmidecode -s bios-version + + + read more → +
+ ++ + +link to study +Video +Priests +God creates Eden in which he places humans to be his royal image - priests. God +sets humans up to receive his blessing but humans choose their own way. The +promise is for a priest and a sacrifice to come in Jesus. +God cho ... + read more → +
+ ++ + +❯ find . -name "requirements.in" -print0 | xargs -0 sh -c 'for arg in "$@"; do echo "awscli" >>"$arg"; done' + + + read more → +
+ ++ + +Video +Eden +Biblical story begins in a garden, which is presented as a type of Temple. The +top (center) is the Tree of Life, which represents God's life and creative +power. Humans were supposed to eat from the Tree of Life but there's +another tree, t ... + read more → +
+ ++ + +study link +Peace +!!! note "" +generally means absnese of war + +In Hebrew the word is Shalom (Greek: Eirene). Basic biblical meeting of +Shalom is "complete" or "whole". ie. a stone with no cracks, or stone wall with +nogaps ... + read more → +
+ ++ + +I use Tmux and Vim for most of my workflow, but I end up with a lot of dangling +tmux sessions that dont' really need to persist... but killing them one at a +time is a pain so I wrote a little script-kitty nonsense to pipe multiple +choices from fzf i ... + read more → +
+ ++ + +link to presentation +Hellenism +During the "silent years" Hellenism was on the rise, even among several Jewish circles. +Essenes +Another Jewish group (like Pharisees, Herodians, etc.) with a lot of debate +surrounding them. They were largely ... + read more → +
+ ++ + +TODO: change title - add --listen or --host or something as 0.0.0.0... that way it listens not on localhost or 127.0.0.1, but on all addresses! + + + read more → +
+ ++ + +Herodians show up twice in the Gospels, Josephus talks about them a bit as +well. There is a lot of hsitorical debate that surrounds the Herodians. + +Like Republicans and Democracts meant one thing in American history, but +those positions and words me ... + read more → +
+ ++ + +Link to presentation +Sadducees +>Often we in the modern time totally conflate Sadducees and Pharisees but they +>are as Republicans and Democrats today... very much not the same +Origin +Back in the Davidic kingdom they are the group that sought t ... + read more → +
+ ++ + +Hellenism + +For the first time in history, Greeks redefined worldfiew to be cenetered +around the individual. Prior to Hellenism, worldviews centered around +pleasing the gods + +Alexander the Great had his own gospel (εὐαγγέλιον - euangelion: predates b ... + read more → +
+ ++ + +https://www.simplified.guide/linux/disk-health-check +Install +For ubuntu/debian based distros (which is what I primarly use presently) +sudo apt update -y && sudo apt install smartmontools -y +List hard drives +lsblk | grep disk is one way or su ... + read more → +
+ ++ + +Link to presentation +Judaism +Modern Judaism is very different from Jesus' Judaism which was distinct from +David's Judaism, etc... We, as modern westerners, need to be aware of the +religious evolution and history of Judaism to properly understand the ... + read more → +
+ ++ + +Intro +Session 1: Torah +Session 2: Prophets and Writings +Review +Torah +Big idea: partnership + +Basis of partnership / meet the characters (Genesis) +God chooses a partner / the partner chooses God (Exodus) +God defines the partnership (Leviticus) +God sha ... + read more → +
+ ++ + +Intro +I use ZFS at home in my homelab for basically all of my storage... Docker uses +ZFS backend, all my VMs have their .qcow2 images in their own zfs datasets, +and all my shares are ZFS datasets. I love ZFS but my home hardware presently +is the opp ... + read more → +
+ ++ + +import this; print(this); print("what is taking so long black!!") + + + + read more → +
+ ++ + +Chapters +Below are just quick notes or quotes from each chapter as a reminder of what to +go back to chat about. This isn't intended to be in-depth by any stretch. +Chapter 1 +"Your man has been accustomed, ever since he was a boy, to have a dozen ... + read more → +
+ ++ + +To filter for saved views from the admin console you have to use the id of +the tag you are using to filter on... +Ex: filtering for tags "Inbox" doesn't work, but for tag 18 does (the id fo the +Inbox tag). I can find that ID by clicking on ... + read more → +
+ ++ + +Steps +sudo fdisk -l +then look for the device and partition +get the Type column +mount +Example + +dumbledore in /media NO PYTHON VENV SET +❯ sudo fdisk -l + +... + +Device Boot Start End Sectors Size Id Type +/dev/sdk1 * 2048 60371951 ... + read more → +
+ ++ + +I just need to RDP into an Ubuntu box via Remmina and everytime I login I have +to authenticate to create a color managed device... which I don't even know +what that is! +To fix it? +vim /etc/polkit-1/localauthority.conf.d/02-allow-colord.conf +polkit.a ... + read more → +
+ ++ + +zfs allow -u $USER clone,load-key,create,destroy,mount,mountpoint,receive,send,rollback,compression,snapshot,hold,keylocation,bookmark tank + +load-key only needed if using encrypted datasets + + + + read more → +
+ ++ + +Assuming you have a PXE server running you only need small edits to the virt-manager config + + + read more → +
+ ++ + +I decided that I want to self-host all my docker images for the purposes of +regularly rebuilding and security scanning. The first step is to set up a +registry, which coincidently enough you can do with a Docker container 😛! +Instructions for setting ... + read more → +
+ ++ + + +Dropdown menue in upper left - doesn't look like one but just click the name of the current device. +URL will be rtsp://<ip address> <- this was the ticket for me + + + + read more → +
+ ++ + +I have started using VMs more and more in my development workflow and it's +impossible to work in a VM without an internet connection for me most of the +time. Setting up the KVM networking is kind of confusing to me and I've done it +two different way ... + read more → +
+ +I write about things I find find interesting in tech and theology
+Let's connect: 🌱 My littlelink is the place to find the places to find me 🤓
+ ++ + +I use LSIO Jelyfin container for the easy addon they provide for AMD GPUs but I couldn't get trickplay to work with HWE... +There was almost NOTHING on the internet about the error, and all the threads were about BSD systems... +Thankfully someone pos ... + read more → +
+ ++ + +The Flood Story and Jesus +Jesus brings up the Flood story from Genesis just one time (in the recorded teachings we have). +First to set the scene, Jesus and his disciples are visiting the temple, and the disiples are kind of "ooo-ing" and & ... + read more → +
+ ++ + +The Flood Story in the Hebrew Bible +I'm slowly making my way through some Bible Project classes online because Tim +Mackie is a fantastic teacher and BP has done be a great service by opening +my eyes to the reality of the Biblical narrative and what ... + read more → +
+ ++ + +I am moving a hefty amount of data to a new ZFS pool due to some corruption and I want to avoid using zfs send/recv for this just to make sure I don't propagate any corrupted data to my new pool. +I've used rsync for simple things before but I needed ... + read more → +
+ ++ + +Htop +I recently have been having significant home server issues, and that's not the point of this - today I learned what D state is when looking at htop. +htop-d +Apparently this means "uninterruptable sleep" and it's a dev's nightmare... +Co ... + read more → +
+ ++ + +Scripture +Luke 2:14 (ESV): 14 “Glory to God in the highest, and on earth peace among those with whom he is pleased!” +Edification +There is a word we probably know - Shalom. It's the Hebrew word we translate often as "peace". But when I hear ... + read more → +
+ ++ + +hostnamectl is apparently a linux utility for easily changing your hostname in a variety of ways + +❯ hostnamectl --help +hostnamectl [OPTIONS...] COMMAND ... + +Query or change system hostname. + +Commands: + status Show current hostname s ... + read more → +
+ ++ + +There a lot of flood stories throughout the history of the world, and the Bible +is no different in this regard. God warns Noah of a de-creation event, whereby +he'll start over with humanity via Noah and his family. Noah survives the flood +by abiding ... + read more → +
+ ++ + +This is your first post! +Edit this content +edit on content/{date}-welcome.md +Add more content +create new markdown files in the content folder +use marmite --new to create new content +Customize your site +edit marmite.yaml to change site settings +edit ... + read more → +
+ ++ + +the Logos web app is DISGUSTINGY bright/white - enough to actually ruin your morning... +Thankfully there's an extension called stylus and some kind folks in the Logos community created a nice dark theme here. You simply install the extension, then g ... + read more → +
+ +I use LSIO Jelyfin container for the easy addon they provide for AMD GPUs but I couldn't get trickplay to work with HWE...
\nThere was almost NOTHING on the internet about the error, and all the threads were about BSD systems...
\nThankfully someone posted on the formum here but the only answer was to literally upgrade stuff in the container...
\nSomeday maybe I'll build off of LSIO to add this, but until then I shell'd in and homelab'd the hell out of it
\n\n\nTHIS IS INSIDE THE CONTAINER - I use Portianer to make it easy
\n
\napt update && apt install -y curl gpg\n\nmkdir -p /etc/apt/keyrings\n\ncurl -fsSL https://repo.radeon.com/rocm/rocm.gpg.key | gpg --dearmor -o /etc/apt/keyrings/rocm.gpg\n\ncat <<EOF | tee /etc/apt/sources.list.d/rocm.sources\n\nTypes: deb\n\nURIs: https://repo.radeon.com/rocm/apt/latest\n\nSuites: ubuntu\n\nComponents: main\n\nArchitectures: amd64\n\nSigned-By: /etc/apt/keyrings/rocm.gpg\n\nEOF\n\napt update && apt install -y rocm-opencl-runtime\n
\n\n",
+ "summary": "",
+ "date_published": "2024-12-14T11:27:15-00:00",
+ "image": "",
+ "authors": [
+ {
+ "name": "Nicholas Payne",
+ "url": "https://github.com/pypeaday",
+ "avatar": "https://github.com/pypeaday.png"
+ }
+ ],
+ "tags": [
+ "containers",
+ "linux",
+ "tech"
+ ],
+ "language": "en"
+ },
+ {
+ "id": "https://pype.dev/the-flood-story-types-and-baptism.html",
+ "url": "https://pype.dev/the-flood-story-types-and-baptism.html",
+ "title": "The Flood Story - Types and Baptism",
+ "content_html": "\nJesus brings up the Flood story from Genesis just one time (in the recorded teachings we have).
\nFirst to set the scene, Jesus and his disciples are visiting the temple, and the disiples are kind of "ooo-ing" and "aaah-ing" when Jesus tells them about about the coming destruction...
\nMatthew 24:1–2 (ESV): 24 Jesus left the temple and was going away, when his\ndisciples came to point out to him the buildings of the temple. 2 But he\nanswered them, “You see all these, do you not? Truly, I say to you, there will\nnot be left here one stone upon another that will not be thrown down.” \n\nThe Holy Bible: English Standard Version (Mt 24:1–2). (2016). Crossway Bibles.\n\n
\nMatthew 24:37–39 (ESV): 37 For as were the days of Noah, so will be the coming\nof the Son of Man. 38 For as in those days before the flood they were eating\nand drinking, marrying and giving in marriage, until the day when Noah entered\nthe ark, 39 and they were unaware until the flood came and swept them all away,\nso will be the coming of the Son of Man. \n\nThe Holy Bible: English Standard Version (Mt 24:37–39). (2016). Crossway Bibles.\n
\nAt one point in Jesus' description of the destruction of the temple in\nJerusalem, he brings up the Son of Man and Noah...
\nJesus says that the "coming of the Son of Man" will be like when Noah built the\nark, and no one understood until the flood (κατακλυσμός | kataklysmos) came and\ntook them away.
\nIn Jesus' mind the flood narrative gives him imagery and vocabulary to talk\nabout when God allows foreign powers to come and bring judgement... This isn't\nan interpretation of the flood narrative, but it clues us into the idea that\nthe Hebrew bible is full of imagery, like a quilt, that follows a (or several)\npattern(s).
\nJesus understood the flood story as a pattern - a theological category to talk\nabout God overthrowing the corrupt power systems of our world - Tim Mackie\n
\n\n\nI think sometimes we look at the flood and think God is so bad for taking out\nall of humanity, but we miss the point... God is RESTORING humanity by\nremoving corruption... that's eventually the story we're invited into via\nfaith in Jesus
\n
A type
is a category of prophecy, and an antitype
is the revelation of the type.
Essentially - a type
is a pattern, and the antytype
is the revelation of\nthe meaning of the pattern - and without understanding the preceding types (in\nthis case, the flood) then the antitype cannot be understood (in this case\nbaptism)
\n\na trivial example of how a type, or a pattern, can be noticed and even build\nanticipation is to think 2, 4, 6, 8... what comes next? 10, and we all know\nthat immediately. Types in general, and types in the Bible are no different,\nalbeit not so simple...
\n
Brace yourself...
\n1 Peter 3:18–22 (ESV): 18 For Christ also suffered once for sins, the righteous\nfor the unrighteous, that he might bring us to God, being put to death in the\nflesh but made alive in the spirit, 19 in which he went and proclaimed to the\nspirits in prison, 20 because they formerly did not obey, when God’s patience\nwaited in the days of Noah, while the ark was being prepared, in which a few,\nthat is, eight persons, were brought safely through water. 21 Baptism, which\ncorresponds to this, now saves you, not as a removal of dirt from the body but\nas an appeal to God for a good conscience, through the resurrection of Jesus\nChrist, 22 who has gone into heaven and is at the right hand of God, with\nangels, authorities, and powers having been subjected to him. \n\nThe Holy Bible: English Standard Version (1 Pe 3:18–22). (2016). Crossway\nBibles.\n
\nNotice verse 21 - "Baptism, which corresponds to this"
\nCorresponds is the word ἀντίτυπος (antitupos) in Greek, which means "anti-type"\nThis means clearly that the type
, or a type, for baptism, is the flood\nnarrative... or that baptism is the antitype for the flood
What does this mean for baptism?
\n21 Baptism, which\ncorresponds to this, now saves you, not as a removal of dirt from the body but\nas an appeal to God for a good conscience, through the resurrection of Jesus\nChrist, 22 who has gone into heaven and is at the right hand of God, with\nangels, authorities, and powers having been subjected to him\n
\nThrough baptism, we experience with Jesus, resurrection and rule of the angels,\nauthorities, and power of the world...
\nFor the disciples listening... are they arguing about when the flood happened?\nor if it was a global or local flood?
\nNo... they are listening to Jesus unpack patterns in the Bible and they hear\nhim invite them, through a story they know very well, into rule and reign with\nhim
\n\n", + "summary": "", + "date_published": "2024-12-14T06:06:38-00:00", + "image": "", + "authors": [ + { + "name": "Nicholas Payne", + "url": "https://github.com/pypeaday", + "avatar": "https://github.com/pypeaday.png" + } + ], + "tags": [ + "bible-project", + "faith" + ], + "language": "en" + }, + { + "id": "https://pype.dev/the-flood-story-quilt-analogy.html", + "url": "https://pype.dev/the-flood-story-quilt-analogy.html", + "title": "The Flood Story - Quilt Analogy", + "content_html": "\nI'm slowly making my way through some Bible Project classes online because Tim\nMackie is a fantastic teacher and BP has done be a great service by opening\nmy eyes to the reality of the Biblical narrative and what it means for my life\nof faith in Jesus.
\nThe second session is filled with great points and 10 minutes in I had to jot\nthis one down...
\nImagine your grandmother's grandmother made a quilt, and passed it down the\nfamily tree. In a sense, that quilt contains history that would pre-date you\nbut would absolutely have meaning to you... However, you might look for meaning\nthat was never intended to be present.
\nThe pieces of the quilt have their own history - there will be material that\nmight've been part of a dress, or curtains, or bedsheets, or anything else\nsomeone in the family tree found interesting and meaningful for the story they\nare telling with their quilt.
\nThe question of what each of the pieces mean on their own, or in where they\ncome from is interesting perhaps, but it's not the same question as asking what\nthose pieces mean now that they have been curated into the family quilt... The\ncreator(s) of the quilt may repurpose those pieces entirely, and it wouldn't be\n"right" for you or me to be upset that one piece of the quilt came from an\narticle of clothing or cloth associated with something we might not like - the\nauthor (your grandma) repurposed it for that very reason, to change the\nmeaning and communicate something to you, perhaps something totally different\nthan what that cloth might've meant before it was added to the quilt.
\nThe quilt is a curated piece of pieces of fabric - and to bring the metaphor\nhome very abruptly, so is the Hebrew Bible... the authors of the Hebrew\nscripture absolutely repurposed stories and images that were present in their\ntime and before, but not to make something that is a cheap copy, but to\ncommunicate the story of the actual God of gods, ruling over the world.
\nFor example - the very beginning of the creationa ccount in Genesis 1 has the\nspirit of God hovering over the waters. Without getting into more details than\na short write-up warrants, the waters in ancient thought represent chaos. Not\nonly that, but there is an older creation account called the Enuma Elish where\ntheir savior god, Marduk, fights the chaos waters (Tiamat) and conquers her\neventually... The thing about the Hebrew narrative is that Yahweh doesn't have\nto fight the waters... he subdues with his words because he isn't in tension\nwith creation, or even with chaos, all things obey him and the chaos waters\nthat other gods had to fight and die over are no different. So the meaning of\nthe waters is somewhat consistent across lots of cultures, but Hebrews took the\nstories and in essence made them "more true", but at the very least made them\nrelevant to the story they are/were communicating about the God of gods and\nLord of love - that he is the creator of all things and invites us to partner\nwith him (as his image-bearers).
\nA lot of Christians get upset or skiddish when other stories and cultures get\nbrought up - as if the Bible had to fall from heaven in their favorite English\ntranslation... but in my opinion that is the silliest and cheapest view of the\nWord of God... he chose people out of foreign lands to make an inheritence for\nhimself, his people, and those people tell his story using images that they\nknow.
\nIt's important for us to answer interesting questions but not lose sight of\nwhat's important... The Enuma Elish is an interesting piece, and there's\nparallels with the Hebrew bible, but the Hebrew creation account clearly\ncommunicates that Yahweh doesn't have to labor and fight for order, he speaks\norder into chaos. That lesson is wholly different from other creation\nnarratives, but is it derivative of them...
\nThat used to bother me, but understanding that the authors of the Bible,\ncarried forth by the guidance of God's spirit, curated these stories and\nnarratives for God's people to communicate the truest Truths about him and his\nlove for people help me understand the reality of God partnering with humanity
\nI am moving a hefty amount of data to a new ZFS pool due to some corruption and I want to avoid using zfs send/recv
for this just to make sure I don't propagate any corrupted data to my new pool.
I've used rsync
for simple things before but I needed this to be a little smarter and I wanted to see simple progress without flooding my terminal with a billion filenames.
TLDR:\nrsync -aHAX --chmod=Da+s --info=progress2 --inplace --exclude='encrypted/docker/frigate-media' /tank/ /harbor/
-aHAX: Preserves attributes (archive mode, hard links, ACLs, extended attributes).\n--chmod=Da+s: Ensures the setgid bit is applied to directories.\n--info=progress2: Provides detailed progress information, including overall data transfer stats.\n--inplace: Writes directly to the destination file, avoiding temporary files (useful for large files).\n--exclude='encrypted/docker/frigate-media': Excludes the specified path (relative to the /tank root).\n/tank/ /harbor/: Ensures the contents of /tank are copied directly into /harbor.
\n\n", + "summary": "", + "date_published": "2024-12-11T10:52:23-00:00", + "image": "", + "authors": [ + { + "name": "Nicholas Payne", + "url": "https://github.com/pypeaday", + "avatar": "https://github.com/pypeaday.png" + } + ], + "tags": [ + "linux", + "terminal", + "tech" + ], + "language": "en" + }, + { + "id": "https://pype.dev/d-and-uninterruptable-sleep.html", + "url": "https://pype.dev/d-and-uninterruptable-sleep.html", + "title": "D and uninterruptable sleep", + "content_html": "\nI recently have been having significant home server issues, and that's not the point of this - today I learned what D
state is when looking at htop.
Apparently this means "uninterruptable sleep" and it's a dev's nightmare...
\nThe issue I was having was that some zfs rollback
commands were hung - for hours... I wasn't sure what was going on, rollbacks should be instant but I figured it was just an artifact of these issues.
Turns out I still don't know what locked the disks up but I learned why <C>-c
did nothing...\nthe more you know
Luke 2:14 (ESV): 14 “Glory to God in the highest, and on earth peace among those with whom he is pleased!”
\nThere is a word we probably know - Shalom. It's the Hebrew word we translate often as "peace". But when I hear "peace" I often think about being calm - and that oversimplifies Shalom... I think a more appropriate understanding is "things are as they are supposed to be".
\nIn the Garden, we see Shalom - the Lord partnering with humanity to steward the earth, to make things as they were supposed to be...
\nYou all know we messed that up, Shalom was broken and humanity was exiled.
\nBut we have a Great Healer.
\nJesus is Lord of all, King of Heaven and Earth, Ruler of your lives and mine, and he is the Prince of Peace
\nThings in our lives are probably not often as they are supposed to be... We get sick, worry about bills, experience tragedy, and weather the storms of life. But there is hope - confident expectation - that peace already has been, and will continue to be, restored to those whom Jesus chooses, the ones with whom he is pleased.
\nJohn records a lot before telling us about the cross, and I won't recount that in this short edification. But he recalls a hopeful word from the Lord -
\nJohn 16:33 (LEB): 33 I [Jesus] have said these things to you so that in me you may have peace. In the world you have affliction, but have courage! I have conquered the world.”
\nThis season, and this week of Advent, I pray God presses the reality, and the hope for, peace, the expectation of Shalom, deeper into my heart. I pray the Spirit guides us all to bring the will of God to earth as it is in Heaven
\nFinally I pray we may all be given, and accept, the conviction of Paul -
\nRomans 8:18 For I consider that the sufferings of this present time are not worthy to be compared with the glory that is to be revealed to us.” Our present trials are not on an equal scale with the glory of heaven
\nMay the rest, the peace, the Shalom that Jesus gives to his followers be with you all. Amen.
\n\n", + "summary": "", + "date_published": "2024-12-06T15:26:15-00:00", + "image": "", + "authors": [ + { + "name": "Nicholas Payne", + "url": "https://github.com/pypeaday", + "avatar": "https://github.com/pypeaday.png" + } + ], + "tags": [ + "faith" + ], + "language": "en" + }, + { + "id": "https://pype.dev/hostnamectl-to-easily-change-hostname.html", + "url": "https://pype.dev/hostnamectl-to-easily-change-hostname.html", + "title": "hostnamectl to easily change hostname", + "content_html": "\nhostnamectl is apparently a linux utility for easily changing your hostname in a variety of ways
\n\n❯ hostnamectl --help\nhostnamectl [OPTIONS...] COMMAND ...\n\nQuery or change system hostname.\n\nCommands:\n status Show current hostname settings\n hostname [NAME] Get/set system hostname\n icon-name [NAME] Get/set icon name for host\n chassis [NAME] Get/set chassis type for host\n deployment [NAME] Get/set deployment environment for host\n location [NAME] Get/set location for host\n\nOptions:\n -h --help Show this help\n --version Show package version\n --no-ask-password Do not prompt for password\n -H --host=[USER@]HOST Operate on remote host\n -M --machine=CONTAINER Operate on local container\n --transient Only set transient hostname\n --static Only set static hostname\n --pretty Only set pretty hostname\n --json=pretty|short|off\n Generate JSON output\n\nSee the hostnamectl(1) man page for details.\n
\nI learned there's transient and static hostnames, so that's cool...
\nThe thing I needed was hostnamectl --static hostname babyblue-aurora
pretty sweet tool
\n\n", + "summary": "", + "date_published": "2024-12-06T07:25:59-00:00", + "image": "", + "authors": [ + { + "name": "Nicholas Payne", + "url": "https://github.com/pypeaday", + "avatar": "https://github.com/pypeaday.png" + } + ], + "tags": [ + "linux", + "terminal", + "tech" + ], + "language": "en" + }, + { + "id": "https://pype.dev/how-to-survive-the-flood.html", + "url": "https://pype.dev/how-to-survive-the-flood.html", + "title": "How To Survive The Flood", + "content_html": "\nThere a lot of flood stories throughout the history of the world, and the Bible\nis no different in this regard. God warns Noah of a de-creation event, whereby\nhe'll start over with humanity via Noah and his family. Noah survives the flood\nby abiding in Yahweh and staying close to the One who loves him.
\n\n\nNote this reflection doesn't address AT ALL if the flood narrative is a\n"real" historical event, whether it's a global or local event, or anything\nlike that - regardless of those points the Biblical authors used this type of\nimagery of chaos waters to communicate themes of judgement and wrath.
\n
Jesus, in the Sermon on the Mount with the 2 houses, calls back to the images\nof the chaos waters (the winds and the rains). His instruction is that the wise\nman who built his house on the rock will survive, but the foolish man builds\nhis house on the sand and the winds and the rains destroyed it.
\nSomewhat obviously this is metaphorical for basing your life on wisdom or\nfolly. The wisdom is Jesus' teaching which is all based on Yahweh's love for\nhumanity and his desire to partner with humanity for the good of the whole\nearth.
\nThe simple take-away is for us to survive the winds and the rain, and to say it\nmore fully - to survive de-creation and destruction, we must live our lives in\na way that revolves around Jesus, the perfect human. He calls us to a greater\nhumanity, an unbroken humanity, which is unachievable apart from him (just look\naround if you doubt this truth).
\nIt's important to notice though that abiding in the Lord, basing your life on\nthe rock, doesn't spare you from the wind and the rain. Trials come, life gets\nhard, shit hits the fan. The last few weeks for me haven't been my favorite and\nI've certainly experienced turmoil in my life but frankly Jesus makes those\nthings bearable... in a way I can't put enough words to I'll just be reminded of\nPaul in Romans 8...
\nworthy to be compared with the glory that is to be revealed to us.” Our present\ntrials are not on an equal scale with the glory of heaven ```\n\nBy God's grace he's molded my heart to be nearly incapable of separating the\nLove God has for me from any trial I face - it's not a magic answer or silver\nbullet to fixing those problems, and it doesn't make them go away, but I know\nthe sufferings here aren't even worth comparing to the glory of the Lord. Amen.\n\n<!-- Content Injected to every content markdown footer -->\n\n[github]: https://github.com/rochacbruno/marmite\n
\n",
+ "summary": "",
+ "date_published": "2024-12-04T05:52:44-00:00",
+ "image": "",
+ "authors": [
+ {
+ "name": "Nicholas Payne",
+ "url": "https://github.com/pypeaday",
+ "avatar": "https://github.com/pypeaday.png"
+ }
+ ],
+ "tags": [
+ "bible-project",
+ "faith"
+ ],
+ "language": "en"
+ },
+ {
+ "id": "https://pype.dev/welcome.html",
+ "url": "https://pype.dev/welcome.html",
+ "title": "Welcome to Marmite",
+ "content_html": "\nThis is your first post!
\nedit on content/{date}-welcome.md
create new markdown files in the content
folder
use marmite --new
to create new content
edit marmite.yaml
to change site settings
edit the files starting with _
in the content
folder to change the layout
or edit the templates to create a custom layout
\nread more on marmite documentation
\n\n", + "summary": "", + "date_published": "2024-12-04T00:00:00-00:00", + "image": "", + "authors": [ + { + "name": "Nicholas Payne", + "url": "https://github.com/pypeaday", + "avatar": "https://github.com/pypeaday.png" + } + ], + "tags": [], + "language": "en" + }, + { + "id": "https://pype.dev/stylus-for-custom-webpage-themes.html", + "url": "https://pype.dev/stylus-for-custom-webpage-themes.html", + "title": "Stylus for custom webpage themes", + "content_html": "\nthe Logos web app is DISGUSTINGY bright/white - enough to actually ruin your morning...
\nThankfully there's an extension called stylus and some kind folks in the Logos community created a nice dark theme here. You simply install the extension, then go to the userstyles link <-- and click install
. It only changes themes for the sites configured - in this case app.logos.com
24 “Everyone then who hears these words of mine and does them will be like a wise man who built his house on the rock. 25 And the rain fell, and the floods came, and the winds blew and beat on that house, but it did not fall, because it had been founded on the rock. 26 And everyone who hears these words of mine and does not do them will be like a foolish man who built his house on the sand. 27 And the rain fell, and the floods came, and the winds blew and beat against that house, and it fell, and great was the fall of it.\n\nThe Holy Bible: English Standard Version (Mt 7:24–27). (2016). Crossway Bibles.\n
\nFrom the visual commentary Tim calls out a few things:
\nthe rock
is supposed to first call us back to earlier in the sermon when Jesus calls his people "the light of the world" and says "a city on a hill [mountain] cannot be hidden" (Matthew 5:14). The hill [ὄρος | oros] means "mountain" and is a hyperlink to OT teaching of God's people living in the ideal Jerusalem on Mt. Zion. Lots of Hebrew imagery here.
The rain and floods are a callback to the Chaos Waters of the OT (and general ANE thinking). It's a reference to the destructive nature that we humans have unleashed on the world - but the wise man who listens to Jesus lives a life with some amount of protection from those hardships - and ultimate protection from God handing us over to Chaos (destruction).
\nI rebooted by server and DNS broke randomly. I have no idea if it was from a kernel update or what but that's the issue with Ubuntu I guess...
\nAfter much toil and none of the other options working for me (sorry to not have those documented here) this is what got me the vic from this SO Post
\nsudo mkdir /etc/systemd/resolved.conf.d/\nsudo $EDITOR /etc/systemd/resolved.conf.d/dns_servers.conf
\nMost folks probably are good with google (8.8.8.8) and cloudflare (1.1.1.1)
\n[Resolve]\nDNS=8.8.8.8 1.1.1.1\n
\nBut I decided to use tailscale
\n[Resolve]\nDNS=100.100.100.100\n
\nThen restart systemd-resolved
\nsudo systemctl restart systemd-resolved
\n\n", + "summary": "", + "date_published": "2024-11-22T08:08:40-00:00", + "image": "", + "authors": [ + { + "name": "Nicholas Payne", + "url": "https://github.com/pypeaday", + "avatar": "https://github.com/pypeaday.png" + } + ], + "tags": [ + "homelab", + "linux", + "tech" + ], + "language": "en" + }, + { + "id": "https://pype.dev/restart-kde-plasma.html", + "url": "https://pype.dev/restart-kde-plasma.html", + "title": "Restart KDE Plasma", + "content_html": "\nPlasma shits the bed a little too often on Fedora for me right now but I finally have a quick fix...
\n\nsudo killall plasmashell\n\nkstart plasmashell\n\n
\n\n",
+ "summary": "",
+ "date_published": "2024-11-08T15:53:52-00:00",
+ "image": "",
+ "authors": [
+ {
+ "name": "Nicholas Payne",
+ "url": "https://github.com/pypeaday",
+ "avatar": "https://github.com/pypeaday.png"
+ }
+ ],
+ "tags": [
+ "linux",
+ "terminal",
+ "tech"
+ ],
+ "language": "en"
+ },
+ {
+ "id": "https://pype.dev/opnsense-bootstrap-recovery.html",
+ "url": "https://pype.dev/opnsense-bootstrap-recovery.html",
+ "title": "OPNSense Bootstrap Recovery",
+ "content_html": "\nenabling DHCP WAN port (dhclient <iface>
)- running the bootstrap script - sh /usr/local/sbin/opnsense-bootstrap
Matthew 7:12
\nSo then, everything you desire that people do to you, so also you do to them, for this is the Torah and the Prophets\n
\nI know there's a lot more to where the texts come from and the varying\ntraditions in Judaism. But I think at a very high level, Jesus is saying that\nwe all know, deep down, how to live in harmony but that it requires sacrifice.\nHe calls us to live sacrificially towards each other, to live in Heaven\ntoday, so we can experience the coming reality if our own resurrection
\n\n", + "summary": "", + "date_published": "2024-11-06T05:54:32-00:00", + "image": "", + "authors": [ + { + "name": "Nicholas Payne", + "url": "https://github.com/pypeaday", + "avatar": "https://github.com/pypeaday.png" + } + ], + "tags": [ + "bible-project", + "faith" + ], + "language": "en" + } + ] +} \ No newline at end of file diff --git a/index.rss b/index.rss new file mode 100644 index 00000000..82f63940 --- /dev/null +++ b/index.rss @@ -0,0 +1,387 @@ +I use LSIO Jelyfin container for the easy addon they provide for AMD GPUs but I couldn't get trickplay to work with HWE...
+There was almost NOTHING on the internet about the error, and all the threads were about BSD systems...
+Thankfully someone posted on the formum here but the only answer was to literally upgrade stuff in the container...
+Someday maybe I'll build off of LSIO to add this, but until then I shell'd in and homelab'd the hell out of it
+++THIS IS INSIDE THE CONTAINER - I use Portianer to make it easy
+
+apt update && apt install -y curl gpg
+
+mkdir -p /etc/apt/keyrings
+
+curl -fsSL https://repo.radeon.com/rocm/rocm.gpg.key | gpg --dearmor -o /etc/apt/keyrings/rocm.gpg
+
+cat <<EOF | tee /etc/apt/sources.list.d/rocm.sources
+
+Types: deb
+
+URIs: https://repo.radeon.com/rocm/apt/latest
+
+Suites: ubuntu
+
+Components: main
+
+Architectures: amd64
+
+Signed-By: /etc/apt/keyrings/rocm.gpg
+
+EOF
+
+apt update && apt install -y rocm-opencl-runtime
+
+
+]]>Jesus brings up the Flood story from Genesis just one time (in the recorded teachings we have).
+First to set the scene, Jesus and his disciples are visiting the temple, and the disiples are kind of "ooo-ing" and "aaah-ing" when Jesus tells them about about the coming destruction...
+Matthew 24:1–2 (ESV): 24 Jesus left the temple and was going away, when his
+disciples came to point out to him the buildings of the temple. 2 But he
+answered them, “You see all these, do you not? Truly, I say to you, there will
+not be left here one stone upon another that will not be thrown down.”
+
+The Holy Bible: English Standard Version (Mt 24:1–2). (2016). Crossway Bibles.
+
+
+Matthew 24:37–39 (ESV): 37 For as were the days of Noah, so will be the coming
+of the Son of Man. 38 For as in those days before the flood they were eating
+and drinking, marrying and giving in marriage, until the day when Noah entered
+the ark, 39 and they were unaware until the flood came and swept them all away,
+so will be the coming of the Son of Man.
+
+The Holy Bible: English Standard Version (Mt 24:37–39). (2016). Crossway Bibles.
+
+At one point in Jesus' description of the destruction of the temple in +Jerusalem, he brings up the Son of Man and Noah...
+Jesus says that the "coming of the Son of Man" will be like when Noah built the +ark, and no one understood until the flood (κατακλυσμός | kataklysmos) came and +took them away.
+In Jesus' mind the flood narrative gives him imagery and vocabulary to talk +about when God allows foreign powers to come and bring judgement... This isn't +an interpretation of the flood narrative, but it clues us into the idea that +the Hebrew bible is full of imagery, like a quilt, that follows a (or several) +pattern(s).
+Jesus understood the flood story as a pattern - a theological category to talk
+about God overthrowing the corrupt power systems of our world - Tim Mackie
+
+++I think sometimes we look at the flood and think God is so bad for taking out +all of humanity, but we miss the point... God is RESTORING humanity by +removing corruption... that's eventually the story we're invited into via +faith in Jesus
+
A type
is a category of prophecy, and an antitype
is the revelation of the type.
Essentially - a type
is a pattern, and the antytype
is the revelation of
+the meaning of the pattern - and without understanding the preceding types (in
+this case, the flood) then the antitype cannot be understood (in this case
+baptism)
++a trivial example of how a type, or a pattern, can be noticed and even build +anticipation is to think 2, 4, 6, 8... what comes next? 10, and we all know +that immediately. Types in general, and types in the Bible are no different, +albeit not so simple...
+
Brace yourself...
+1 Peter 3:18–22 (ESV): 18 For Christ also suffered once for sins, the righteous
+for the unrighteous, that he might bring us to God, being put to death in the
+flesh but made alive in the spirit, 19 in which he went and proclaimed to the
+spirits in prison, 20 because they formerly did not obey, when God’s patience
+waited in the days of Noah, while the ark was being prepared, in which a few,
+that is, eight persons, were brought safely through water. 21 Baptism, which
+corresponds to this, now saves you, not as a removal of dirt from the body but
+as an appeal to God for a good conscience, through the resurrection of Jesus
+Christ, 22 who has gone into heaven and is at the right hand of God, with
+angels, authorities, and powers having been subjected to him.
+
+The Holy Bible: English Standard Version (1 Pe 3:18–22). (2016). Crossway
+Bibles.
+
+Notice verse 21 - "Baptism, which corresponds to this"
+Corresponds is the word ἀντίτυπος (antitupos) in Greek, which means "anti-type"
+This means clearly that the type
, or a type, for baptism, is the flood
+narrative... or that baptism is the antitype for the flood
What does this mean for baptism?
+21 Baptism, which
+corresponds to this, now saves you, not as a removal of dirt from the body but
+as an appeal to God for a good conscience, through the resurrection of Jesus
+Christ, 22 who has gone into heaven and is at the right hand of God, with
+angels, authorities, and powers having been subjected to him
+
+Through baptism, we experience with Jesus, resurrection and rule of the angels, +authorities, and power of the world...
+For the disciples listening... are they arguing about when the flood happened? +or if it was a global or local flood?
+No... they are listening to Jesus unpack patterns in the Bible and they hear +him invite them, through a story they know very well, into rule and reign with +him
+ +]]>I'm slowly making my way through some Bible Project classes online because Tim +Mackie is a fantastic teacher and BP has done be a great service by opening +my eyes to the reality of the Biblical narrative and what it means for my life +of faith in Jesus.
+The second session is filled with great points and 10 minutes in I had to jot +this one down...
+Imagine your grandmother's grandmother made a quilt, and passed it down the +family tree. In a sense, that quilt contains history that would pre-date you +but would absolutely have meaning to you... However, you might look for meaning +that was never intended to be present.
+The pieces of the quilt have their own history - there will be material that +might've been part of a dress, or curtains, or bedsheets, or anything else +someone in the family tree found interesting and meaningful for the story they +are telling with their quilt.
+The question of what each of the pieces mean on their own, or in where they +come from is interesting perhaps, but it's not the same question as asking what +those pieces mean now that they have been curated into the family quilt... The +creator(s) of the quilt may repurpose those pieces entirely, and it wouldn't be +"right" for you or me to be upset that one piece of the quilt came from an +article of clothing or cloth associated with something we might not like - the +author (your grandma) repurposed it for that very reason, to change the +meaning and communicate something to you, perhaps something totally different +than what that cloth might've meant before it was added to the quilt.
+The quilt is a curated piece of pieces of fabric - and to bring the metaphor +home very abruptly, so is the Hebrew Bible... the authors of the Hebrew +scripture absolutely repurposed stories and images that were present in their +time and before, but not to make something that is a cheap copy, but to +communicate the story of the actual God of gods, ruling over the world.
+For example - the very beginning of the creationa ccount in Genesis 1 has the +spirit of God hovering over the waters. Without getting into more details than +a short write-up warrants, the waters in ancient thought represent chaos. Not +only that, but there is an older creation account called the Enuma Elish where +their savior god, Marduk, fights the chaos waters (Tiamat) and conquers her +eventually... The thing about the Hebrew narrative is that Yahweh doesn't have +to fight the waters... he subdues with his words because he isn't in tension +with creation, or even with chaos, all things obey him and the chaos waters +that other gods had to fight and die over are no different. So the meaning of +the waters is somewhat consistent across lots of cultures, but Hebrews took the +stories and in essence made them "more true", but at the very least made them +relevant to the story they are/were communicating about the God of gods and +Lord of love - that he is the creator of all things and invites us to partner +with him (as his image-bearers).
+A lot of Christians get upset or skiddish when other stories and cultures get +brought up - as if the Bible had to fall from heaven in their favorite English +translation... but in my opinion that is the silliest and cheapest view of the +Word of God... he chose people out of foreign lands to make an inheritence for +himself, his people, and those people tell his story using images that they +know.
+It's important for us to answer interesting questions but not lose sight of +what's important... The Enuma Elish is an interesting piece, and there's +parallels with the Hebrew bible, but the Hebrew creation account clearly +communicates that Yahweh doesn't have to labor and fight for order, he speaks +order into chaos. That lesson is wholly different from other creation +narratives, but is it derivative of them...
+That used to bother me, but understanding that the authors of the Bible, +carried forth by the guidance of God's spirit, curated these stories and +narratives for God's people to communicate the truest Truths about him and his +love for people help me understand the reality of God partnering with humanity
+I am moving a hefty amount of data to a new ZFS pool due to some corruption and I want to avoid using zfs send/recv
for this just to make sure I don't propagate any corrupted data to my new pool.
I've used rsync
for simple things before but I needed this to be a little smarter and I wanted to see simple progress without flooding my terminal with a billion filenames.
TLDR:
+rsync -aHAX --chmod=Da+s --info=progress2 --inplace --exclude='encrypted/docker/frigate-media' /tank/ /harbor/
-aHAX: Preserves attributes (archive mode, hard links, ACLs, extended attributes). +--chmod=Da+s: Ensures the setgid bit is applied to directories. +--info=progress2: Provides detailed progress information, including overall data transfer stats. +--inplace: Writes directly to the destination file, avoiding temporary files (useful for large files). +--exclude='encrypted/docker/frigate-media': Excludes the specified path (relative to the /tank root). +/tank/ /harbor/: Ensures the contents of /tank are copied directly into /harbor.
+ +]]>I recently have been having significant home server issues, and that's not the point of this - today I learned what D
state is when looking at htop.
Apparently this means "uninterruptable sleep" and it's a dev's nightmare...
+The issue I was having was that some zfs rollback
commands were hung - for hours... I wasn't sure what was going on, rollbacks should be instant but I figured it was just an artifact of these issues.
Turns out I still don't know what locked the disks up but I learned why <C>-c
did nothing...
+the more you know
Luke 2:14 (ESV): 14 “Glory to God in the highest, and on earth peace among those with whom he is pleased!”
+There is a word we probably know - Shalom. It's the Hebrew word we translate often as "peace". But when I hear "peace" I often think about being calm - and that oversimplifies Shalom... I think a more appropriate understanding is "things are as they are supposed to be".
+In the Garden, we see Shalom - the Lord partnering with humanity to steward the earth, to make things as they were supposed to be...
+You all know we messed that up, Shalom was broken and humanity was exiled.
+But we have a Great Healer.
+Jesus is Lord of all, King of Heaven and Earth, Ruler of your lives and mine, and he is the Prince of Peace
+Things in our lives are probably not often as they are supposed to be... We get sick, worry about bills, experience tragedy, and weather the storms of life. But there is hope - confident expectation - that peace already has been, and will continue to be, restored to those whom Jesus chooses, the ones with whom he is pleased.
+John records a lot before telling us about the cross, and I won't recount that in this short edification. But he recalls a hopeful word from the Lord -
+John 16:33 (LEB): 33 I [Jesus] have said these things to you so that in me you may have peace. In the world you have affliction, but have courage! I have conquered the world.”
+This season, and this week of Advent, I pray God presses the reality, and the hope for, peace, the expectation of Shalom, deeper into my heart. I pray the Spirit guides us all to bring the will of God to earth as it is in Heaven
+Finally I pray we may all be given, and accept, the conviction of Paul -
+Romans 8:18 For I consider that the sufferings of this present time are not worthy to be compared with the glory that is to be revealed to us.” Our present trials are not on an equal scale with the glory of heaven
+May the rest, the peace, the Shalom that Jesus gives to his followers be with you all. Amen.
+ +]]>hostnamectl is apparently a linux utility for easily changing your hostname in a variety of ways
+
+❯ hostnamectl --help
+hostnamectl [OPTIONS...] COMMAND ...
+
+Query or change system hostname.
+
+Commands:
+ status Show current hostname settings
+ hostname [NAME] Get/set system hostname
+ icon-name [NAME] Get/set icon name for host
+ chassis [NAME] Get/set chassis type for host
+ deployment [NAME] Get/set deployment environment for host
+ location [NAME] Get/set location for host
+
+Options:
+ -h --help Show this help
+ --version Show package version
+ --no-ask-password Do not prompt for password
+ -H --host=[USER@]HOST Operate on remote host
+ -M --machine=CONTAINER Operate on local container
+ --transient Only set transient hostname
+ --static Only set static hostname
+ --pretty Only set pretty hostname
+ --json=pretty|short|off
+ Generate JSON output
+
+See the hostnamectl(1) man page for details.
+
+I learned there's transient and static hostnames, so that's cool...
+The thing I needed was hostnamectl --static hostname babyblue-aurora
pretty sweet tool
+ +]]>There a lot of flood stories throughout the history of the world, and the Bible +is no different in this regard. God warns Noah of a de-creation event, whereby +he'll start over with humanity via Noah and his family. Noah survives the flood +by abiding in Yahweh and staying close to the One who loves him.
+++Note this reflection doesn't address AT ALL if the flood narrative is a +"real" historical event, whether it's a global or local event, or anything +like that - regardless of those points the Biblical authors used this type of +imagery of chaos waters to communicate themes of judgement and wrath.
+
Jesus, in the Sermon on the Mount with the 2 houses, calls back to the images +of the chaos waters (the winds and the rains). His instruction is that the wise +man who built his house on the rock will survive, but the foolish man builds +his house on the sand and the winds and the rains destroyed it.
+Somewhat obviously this is metaphorical for basing your life on wisdom or +folly. The wisdom is Jesus' teaching which is all based on Yahweh's love for +humanity and his desire to partner with humanity for the good of the whole +earth.
+The simple take-away is for us to survive the winds and the rain, and to say it +more fully - to survive de-creation and destruction, we must live our lives in +a way that revolves around Jesus, the perfect human. He calls us to a greater +humanity, an unbroken humanity, which is unachievable apart from him (just look +around if you doubt this truth).
+It's important to notice though that abiding in the Lord, basing your life on +the rock, doesn't spare you from the wind and the rain. Trials come, life gets +hard, shit hits the fan. The last few weeks for me haven't been my favorite and +I've certainly experienced turmoil in my life but frankly Jesus makes those +things bearable... in a way I can't put enough words to I'll just be reminded of +Paul in Romans 8...
+worthy to be compared with the glory that is to be revealed to us.” Our present
+trials are not on an equal scale with the glory of heaven ```
+
+By God's grace he's molded my heart to be nearly incapable of separating the
+Love God has for me from any trial I face - it's not a magic answer or silver
+bullet to fixing those problems, and it doesn't make them go away, but I know
+the sufferings here aren't even worth comparing to the glory of the Lord. Amen.
+
+<!-- Content Injected to every content markdown footer -->
+
+[github]: https://github.com/rochacbruno/marmite
+
+]]>This is your first post!
+edit on content/{date}-welcome.md
create new markdown files in the content
folder
use marmite --new
to create new content
edit marmite.yaml
to change site settings
edit the files starting with _
in the content
folder to change the layout
or edit the templates to create a custom layout
+read more on marmite documentation
+ +]]>the Logos web app is DISGUSTINGY bright/white - enough to actually ruin your morning...
+Thankfully there's an extension called stylus and some kind folks in the Logos community created a nice dark theme here. You simply install the extension, then go to the userstyles link <-- and click install
. It only changes themes for the sites configured - in this case app.logos.com
24 “Everyone then who hears these words of mine and does them will be like a wise man who built his house on the rock. 25 And the rain fell, and the floods came, and the winds blew and beat on that house, but it did not fall, because it had been founded on the rock. 26 And everyone who hears these words of mine and does not do them will be like a foolish man who built his house on the sand. 27 And the rain fell, and the floods came, and the winds blew and beat against that house, and it fell, and great was the fall of it.
+
+The Holy Bible: English Standard Version (Mt 7:24–27). (2016). Crossway Bibles.
+
+From the visual commentary Tim calls out a few things:
+the rock
is supposed to first call us back to earlier in the sermon when Jesus calls his people "the light of the world" and says "a city on a hill [mountain] cannot be hidden" (Matthew 5:14). The hill [ὄρος | oros] means "mountain" and is a hyperlink to OT teaching of God's people living in the ideal Jerusalem on Mt. Zion. Lots of Hebrew imagery here.
The rain and floods are a callback to the Chaos Waters of the OT (and general ANE thinking). It's a reference to the destructive nature that we humans have unleashed on the world - but the wise man who listens to Jesus lives a life with some amount of protection from those hardships - and ultimate protection from God handing us over to Chaos (destruction).
+I rebooted by server and DNS broke randomly. I have no idea if it was from a kernel update or what but that's the issue with Ubuntu I guess...
+After much toil and none of the other options working for me (sorry to not have those documented here) this is what got me the vic from this SO Post
+sudo mkdir /etc/systemd/resolved.conf.d/ +sudo $EDITOR /etc/systemd/resolved.conf.d/dns_servers.conf
+Most folks probably are good with google (8.8.8.8) and cloudflare (1.1.1.1)
+[Resolve]
+DNS=8.8.8.8 1.1.1.1
+
+But I decided to use tailscale
+[Resolve]
+DNS=100.100.100.100
+
+Then restart systemd-resolved
+sudo systemctl restart systemd-resolved
+ +]]>Plasma shits the bed a little too often on Fedora for me right now but I finally have a quick fix...
+
+sudo killall plasmashell
+
+kstart plasmashell
+
+
+
+]]>enabling DHCP WAN port (dhclient <iface>
)- running the bootstrap script - sh /usr/local/sbin/opnsense-bootstrap
Matthew 7:12
+So then, everything you desire that people do to you, so also you do to them, for this is the Torah and the Prophets
+
+I know there's a lot more to where the texts come from and the varying +traditions in Judaism. But I think at a very high level, Jesus is saying that +we all know, deep down, how to live in harmony but that it requires sacrifice. +He calls us to live sacrificially towards each other, to live in Heaven +today, so we can experience the coming reality if our own resurrection
+ +]]>Look at notes in home-server... apt repos, zfs, etc.
+ +When connecting from my phone to jellyfin I'm seeing some interesting patterns.
+Wifi: off +Tailscale: on +Use exit node: on +LAN access: on +Jellyfin: LAN IP
+Jellyfin sees 192.168.1.1, my router address
+Wifi: off +tailscale: on +Use exit node: on +LAN access: on +Jellyfin: Tailscale magic DNS
+Jellyfin sees the docker bridge network
+Q: This might be because of traefik somehow
+Wifi: off +tailsacale: on +Use exit node: on +LAN access: off +Jellyfin: LAN IP
+Jellyfin sees the 192.168.1.1
+Q: Why did this work even work?
+Wifi: off +tailsacale: on +Use exit node: on +LAN access: off +Jellyfin: Tailscale magic DNS
+Jellyfin sees the docker bridge network
+Wifi: off +tailsacale: on +Use exit node: off +LAN access: off +Jellyfin: LAN IP
+Jellyfin sees the 192.168.1.1
+Q: Why did this work?
+Wifi: off +tailsacale: on +Use exit node: off +LAN access: off +Jellyfin: Tailscale magic DNS
+Jellyfin sees the docker bridge network
+Wifi: on +tailsacale: of +Use exit node: off +LAN access: off +Jellyfin: LAN IP (via pihole DNS)
+Jellyfin sees the IP of my phone
+I have a post on starship where I have some notes on how I use starship to make my zsh experience great with a sweet terminal prompt.
+Now... I spend quite a bit of time in ipython every day and I got kind of sick of the vanilla experience and wanted something that more closely matched my starship prompt.
+There's more to customizing ipython I know for sure but here's 2 things I have going for me...
+I use rich
authored by @Will McGugan which makes much of my ipython experience great.
+I won't write about that here but you can find my rich
config here
I used pygments
to customize the ipython prompt with my ipython_config.py
and a startup script, next to my rich
one, called 99-prompt.py
.
++The scripts inside
+~/.ipython/<profile>/startup
are executed in lexigraphical order, so it's nice to name things in the 10's to give room for adding scripts in between others down the line.
My zsh prompt looks a little something like this:
+ +And after my ipython customiztion it currently (subject to much change but this is as of my dotfiles commit #d22088f6be81a58b5f7dfb73b7a4088cbdd9fece on main
).
Now in ipython I have an indicator of my working directory, git branch, python environment, and a note that I'm in ipython
and not zsh
.
+I also configured my prompt to warn me if I'm not in a git directory!
All in all the customization isn't too bad with just 2 specific files.
+There's several use cases for ipython_config.py
files in several areas on a pc - sometimes you want a common config across users, so you'd drop one in /etc/ipython
and othertimes you have your own which is probably at ~/.ipython
My ipython config mostly has colors defined on pygment tokens
plus a few autorun commands and pyflyby
(see my friend Waylon's post on pyflyby here)
I wanted to match my ipython somewhat to my tmux and vim color schemes, which I model after the vim-airline theme night owl
.
After picking some some colors and saving variables it's a matter of setting colors per token and then referencing those tokens in your version of 99-prompt.py
.
You can check out my ipython_config.py
here
For example, I can set Token.Name.Function
to black, and in ipython
then a function's definition will appear in black text. I set mine to cyan to match my theme.
For the prompt colors just match the keyword in c.TerminalInteractiveShell.highlighting_style_overrides
with what is referenced inside 99-prompt.py
For example, Token.Prompt
is set to bold grey
which gives me the bold chevron symbol you see in the above image that looks like my zsh prompt
Then in 99-prompt.py
I have this set for the prompt:
Token.Prompt "❯ "
+
+You don't need to name your script 99-prompt.py
, but I wanted to know that it was for my prompt and I wanted it executed last so it made sense.
Here I have MyPrompt
class with the prompt symbol defined as above and several other things...
class MyPrompt(Prompts):
+ def in_prompt_tokens(self, cli=None):
+ return [
+ (Token, ""),
+ (Token.OutPrompt, Path().absolute().stem),
+ (Token, " "),
+ (Token.Generic.Subheading, get_branch()[0]),
+ (Token, " "),
+ (Token.Generic.Heading, get_branch()[1]),
+ (Token, " "),
+ (Token.Name.Class, "via " + get_venv()),
+ (Token, " "),
+ (Token.Name.Entity, "ipython"),
+ (Token, "\n"),
+ (
+ Token.Prompt
+ if self.shell.last_execution_succeeded
+ else Token.Generic.Error,
+ "❯ ",
+ ),
+ ]
+
+
+Notice I have 2 custom functions here, get_branch
and get_venv
which grab some git info and python env info and return strings I can dump into my prompt as shown above.
To finish you drop ip = get_ipython()
and ip.prompts = MyPrompt(ip)
at the bottom of your prompt script and you should be in custom prompt city!
This is more or less notes for myself on how this works - drop by my ipython config in my dotfiles repo to see my full configs for ipython!
+ +I use LSIO Jelyfin container for the easy addon they provide for AMD GPUs but I couldn't get trickplay to work with HWE...
+There was almost NOTHING on the internet about the error, and all the threads were about BSD systems...
+Thankfully someone posted on the formum here but the only answer was to literally upgrade stuff in the container...
+Someday maybe I'll build off of LSIO to add this, but until then I shell'd in and homelab'd the hell out of it
+++THIS IS INSIDE THE CONTAINER - I use Portianer to make it easy
+
+apt update && apt install -y curl gpg
+
+mkdir -p /etc/apt/keyrings
+
+curl -fsSL https://repo.radeon.com/rocm/rocm.gpg.key | gpg --dearmor -o /etc/apt/keyrings/rocm.gpg
+
+cat <<EOF | tee /etc/apt/sources.list.d/rocm.sources
+
+Types: deb
+
+URIs: https://repo.radeon.com/rocm/apt/latest
+
+Suites: ubuntu
+
+Components: main
+
+Architectures: amd64
+
+Signed-By: /etc/apt/keyrings/rocm.gpg
+
+EOF
+
+apt update && apt install -y rocm-opencl-runtime
+
+
+I use Jellyfin at home for serving up most of our media - movies and shows etc.
+My dream is to have a GPU capable of transcoding any and all of our media for smooth playback on any device... +Now, I thought I'd have that by now with my Nvidia Quadro P400 however I have issues left and right with 4k content.
+What can I do to still use Jellyfin but get smooth playback?
+THe first answer is figure out why I suck with GPUs, but pausing that there's shorter solutions -> namely, use a media player that's compatabile with the encoded content!
+I'll keep this one short - VLC is great and if you don't need a netflix like experience, I'd recommend just using it to browse your network drives and play whatever you have
+This is the reason I'm writing this post... the web player is great but not everything is supported on all devices
+This cross-platform cast client is my answer now. +You can find the project here
+The installation instrauctions are super straightforward for Windows, Mac OS, or Linux.
+I'm on Linux and so my install went like this:
+
+sudo apt update
+sudo apt install mpv
+
+pipx install jellyfin-mpv-shim
+pipx inject jellyfin-mpv-shim pystray
+
+#profit
+
+
+I used pipx
to install the player as I prefer it for stand alone utilities over pip installing anything globally.
Afer that I just start the player at the terminal with jellyfin-mpv-shim
+Then in the web browser I can cast my content to the player and bypass the web player (and thus solve much of my transcoding issues) trivially!
I've been using kanboard as a self-hosted kanban board. It's keeping me focused on Digital Harbor when I'd rather be doing something less productive.
+Here's the thing about my TODOs... they're everywhere. I've tried a crazy amount of different organizational tactics for my todo items. I've tried post-it notes, a journal, TODO.md
in specific repos, a master todo
repo, todo CLIs, etc...
The problem for me was consistency... I would regularly forget what I was using for TODOs at that moment in my life... was there a todo file in this project? Do I have a todo repo cloned on this computer? Is this stuff in my journal or on post-it notes?
+And what do I do with new ideas? Do I organize them centrally or use a repo for the idea I have?
+It was getting out of hand to a debilitating degree... For a while I just gave up on being organized at all... Things would get done as necessary and if I got some motivation to work on something it was immediately smothered with the anxiety of how I was going to organize my work...
+At some point it became too much... Now, I have some experience with Azure DevOps/Jira for project management and then I came across Kanboard...
+Kanboard is just a self-hosted kanban style todo app. I know there's a ton of these so the TL;DR of my lesson is I picked an app that I would just use based on simplicity of managing and hosting.
+I have had kanboard running in my homelab for a long time, but I only barely use it intermittenly. And at that rate I didn't spend any real time organizing my tickets, so I wasn't akshuallly using it - it was just a post-it note replacement.
+But then I had an idea for a genuine business idea, and if I was going to ever have a hope of making it a reality, I needed to stay organized. This was when I decided to give kanboard a little more effort... I knew I could always remember that I'd chosen an app as my TODO solution (given all the time I spent questioning what I was using at any given point in time). I also knew I could host kanboard so that I could get to it from wherever was necessary because my homelab is relatively easy to add another public service to.
+So once I just decided to lean into this thing, I would take advantage of any moments of motivation and just jot down ideas for things that had to get done... Simple stuff like explore an infra management option, add one feature to a config, or migrate one website to another stack... And I would just write these things downs until I have enough time free to crack down on a task. The beautiful thing is, when I am struck with just enough time to do something, and the motivation to do something, I don't waste any time deciding what to do - past-me did present-me a favor and decided what was important already... So as long as I do myself the favor, when I'm ready to go I am never beaten by the anxiety of not knowing what I ant to do or how I'll track what I'm doing... I chose kanboard and even though it's not as fast as a terminal TUI, it is reliable, simple, and keeps me focused on what I need to do.
+Not only is just having one app as the solution nice because it's centrally managed and accessible from wherever I need to get it, but the TOP feature of kanboard I use is comments on tickets... I get to continue to do future-me favors, my jotting down where I'm at in a task, what's left to do, what I'm trying, etc... and future-me is in a great mood, because when I have that free few minutes, I can just read my own past thoughts and get back up to speed without wasting time trying to remember things I never would've remembered if I hadn't written them down!
+ +I have started using VMs more and more in my development workflow and it's +impossible to work in a VM without an internet connection for me most of the +time. Setting up the KVM networking is kind of confusing to me and I've done it +two different ways. Here is how I set it up on my home desktop using NAT.
+First thing's first: credit to this post
+There was a default
network already made by virt-manager but my VM couldn't connect over it at all...
These commands got me up and running without even turning the VM off
+++I went full on
+sudo -i
for this just to make it easier - be careful
# as root
+
+virsh net-dumpxml default > br1.xml
+
+vim br1.xml
+
+
+I was unsure what the ip range should be so I just stuck with the original blog.
+The default
network had the CIDR block defined as 192.168.122.0/24
which is different from my home network so I guess it's fine?
<network>
+ <name>br1</name>
+ <forward mode='nat'>
+ <nat>
+ <port start='1024' end='65535'/>
+ </nat>
+ </forward>
+ <bridge name='br1' stp='on' delay='0'/>
+ <ip address='192.168.10.1' netmask='255.255.255.0'>
+ <dhcp>
+ <range start='192.168.10.10' end='192.168.10.100'/>
+ </dhcp>
+ </ip>
+</network>
+
+virsh net-define br1.xml
+virsh net-autostart br1
+
+Then to check...
+virsh net-list --all
+
+ Name State Autostart Persistent
+--------------------------------------------
+ br1 active yes yes
+ default active yes yes
+
+virsh net-uuid br1
virsh attach-interface --domain <NAME OF VM> --type bridge --source br1 --model virtio --config --live
My VM, ubuntu20.04
was running and immediately connected to the newly attached device!
Visit the original post for more details - this serves more as as a quicker set of notes for future me
+ +zfs list has a flag -r, but if you use zfs driver for docker then you'll get +flooded with every docker volume in the world. zfs list -r -d N will limit the +dept of the print out, so zfs list -r -d 2 gives me tank, tank/encrypted, +tank/encrypted/docker -> but then I don't see all the continer volumes
+ +I get https URLs and domain resolution at home with pihole's DNS/CNAME records
+ +lsof | grep /tank/nas shows me what is using my nas at any time!
+ +mkdir s{1..10} will make directories s1, s2, ... s10 in one command!
+ +8sFmXRD3av@oqq >0NCfvmY18D2oM5fhC}27{(LZC{dql_l>G6y$-g$MAYmgB(33d4Vc(B>5=Sz*
z;Y=>c|7np4xqLd686Y!~l#$aPfTanTS3Mp2399P403g<6YmN*!^~II+fQVQ}vZM
zGD`!5V6Z>?%5&$mQ+ZXjL9#RrS5zPcmt5W0I6e#j&p=a$~yu4Ma}p%xkkdAe~
zQZCO1QQfQ+XU5Kg*KA2NV$JL92~j+_tmBS}X7y2A7R9P%nKqtTBDCRY3%Z&%7X|V-
zHNrrmd{ipHp|PE(a4)J;Nrey@6QCwVhyG~GATiU52b!6N9F`$som&(apQJqT(
tO!7$1Z#(`K&!_0=lT5LzI
zqC8hp;vLeB@<4Y_pqmN_9cpdWepGIMN3&=Fz~8C6zDz3_00yV(n2~MUG>aAhd;^32
zXkV(K0Ra5QrtR>QDcI))fXW@aJcN{dq?F8+umYqq0|UdIW#NX!t#`e5_SH;om_c~&
z+$)P(KRmg9Wj2@EfBFTJv|S9A1Y{kyyDK?ia;evcDkA=PG>rh-7F21M0PNh_m(Apv
zVj?yEd=3Dx$BO{K
jSwqoq6zLVf+FU-;
zL%57&2>@^wx%Y5`6|Vw5U$oulL%{rRC+H?(t)9YEy*}z@2;(FxD&(*S1P&17|JVXk
z4HdRgUOYjc@ByryZcUN<=!nL?kKXbAJ1@1+H@k^9gkae8I|$!t?oX+2MORC5l4S+X
zhyZ*}{jj8k{Qv-q&Y-#GSk+Ddph3rY-15Pv%lYkJ+xwaGi|+sWYs51(fEE@CJNv`+
zXhPrSbaiS8w%h*IdDhiX{3<>`e>8braSpl*0zIrc=X0I4!GvA-ThRg<*|Fz8uC8<)
zF%>e37px{*O>Yu%L&<;sZ5#;EeGgEe-9yd~Sz#eS=)r|P@0@d=0fIkmJRSdN$v43Q
zSjWT?j~`$8Zu)o_`3e*ldmCuf%S0Gh44&LL1wPYH6e0zSIs+G8%jX2Tes3s>8eg2m
zi>0fS@VuVS9e7pS7|ao(c0SH+zHOgu8bGs4|EnmwcUtY
V8V)OsDDQ_Ye=)=diWm%y}*C|#8?Vlwj}Pc=zVUA<;kO5m+uC_+N8eHRYeV)XnW`oiMJFF)pV
zgu~X1Jpv@%stzABX6Wcq&p-0mtIxm4l4@!Ks}w3v1J~2$qAlDS))9@Fq$KIVe*eT4
zzP7wcsw0HL)ek$(E_YqtWN~Uh_eYo{fVP~`I3da#g`4O`d?=OXTquD77CTJjaaaBs=W;v6dgc