Published

All published posts

2540 posts latest post 2026-06-16 simple view
Publishing rhythm
May 2026 | 58 posts
Minecraft Doc Day 0
Acacia biome spawn with trees and resources in a new hardcore world.

minecraft documentary

This is my first time journaling a Minecraft hardcore world, my son Wyatt is also documenting his journey in a survival world on wyattbubbylee.com [1]. Day 0 # [2] init [3] I logged into a brand new hardcore world. I was welcomed by a great Acacia biome spawn full of resources. I quickly cut my first tree, crafted an axe and set out to find my first sheep. I was able to find enough sheep for a bed, several cows and pigs. I crafted a set of wooden tools, and farmed out a wheat farm till my wooden hoed died at the shore of a nearby stream. I found a small stone outcropping in the side of a hill and harvested nearly a full stack of cobblestone from my first wooden pick. I ended the first day by sleeping in my bed safe from mobs. Achievements # [4] - bed - furnace - stone - wheat farm Day 1 # [5] [6] Thoughout the course of day one I collected wood and started the framework for my new house. Day 2 # [7] [8] The sun sets over the new frame of my house on Day 1 Day two...
Looking for inspiration? sshfs [1] by libfuse [2]. A network filesystem client to connect to SSH servers References: [1]: https://github.com/libfuse/sshfs [2]: https://github.com/libfuse

I recently setup some vm’s on my main machine and got sick of signing in with passwords.

ssh-keygen
ssh-copy-id -i ~/.ssh/id_rsa.pub virt

Moving panes between tmux sessions is something that makes tmux a very flexible and powerful tool. I don’t need this feature very often, but it comes in clutch when you need it.

Pull a pane from any other session #

Using choose-window I was able to come up with a way to select any pane withing any other session and join it into my current session.

# Choose a pane to join in horizontally
bind f choose-window -Z 'join-pane -h -s "%%"'

Push/Pull from scratch #

I’ve long had this one in my tmux config, I always have a “scratch” session that I’m running, I often use for looking at things like k9s accross repos within a popup.

This use case puts a pane into the scratch session, then pulls it back out. I will use this to move a pane between sessions in the rare cases I need to do this.

# push the active pane into the scratch session horizonally
bind -n M-f join-pane -ht scratch
# pull the last active pane from the scratch session horizonally into this session
bind -n M-F join-pane -hs scratch
joehillen [1] has done a fantastic job with sysz [2]. Highly recommend taking a look. An fzf terminal UI for systemctl References: [1]: https://github.com/joehillen [2]: https://github.com/joehillen/sysz
I like eth-p’s [1] project bat-extras [2]. Bash scripts that integrate bat with various command line tools. References: [1]: https://github.com/eth-p [2]: https://github.com/eth-p/bat-extras
Just starred clipmenu [1] by cdown [2]. It’s an exciting project with a lot to offer. Clipboard management using dmenu References: [1]: https://github.com/cdown/clipmenu [2]: https://github.com/cdown
I’m impressed by neix [1] from qw3rtty [2]. neix - a RSS/Atom feed reader for your terminal. References: [1]: https://github.com/qw3rtty/neix [2]: https://github.com/qw3rtty
rwhitt2049 [1] has done a fantastic job with df-viewer-poc [2]. Highly recommend taking a look. No description available. References: [1]: https://github.com/rwhitt2049 [2]: https://github.com/rwhitt2049/df-viewer-poc
The work on ansible-vault-pre-commit [1] by pypeaday [2]. pre-commit hook to ensure sensitive info in a repo is encrypted with ansible-vault References: [1]: https://github.com/pypeaday/ansible-vault-pre-commit [2]: https://github.com/pypeaday
The work on PySnooper [1] by cool-RR [2]. Never use print for debugging again References: [1]: https://github.com/cool-RR/PySnooper [2]: https://github.com/cool-RR

I just shared some ssh keys with myself and ran into this error telling me that I did not set the correct permissions on my key.

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0750 for '/home/waylon/.ssh/id_*******' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key "/home/waylon/.ssh/id_*******": bad Permissions
repo: Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

I changed them with the following commands.

chmod 644 ~/.ssh/id_*******.pub
chmod 600 ~/.ssh/id_*******
Mr-Destructive [1] has done a fantastic job with djankata [2]. Highly recommend taking a look. Django + Markata blog starter References: [1]: https://github.com/Mr-Destructive [2]: https://github.com/Mr-Destructive/djankata
Check out nvim [1] by Allaman [2]. It’s a well-crafted project with great potential. Minimal, blazingly fast, and pure Lua based Neovim configuration for my work as DevOps/Cloud Engineer with batteries included for Python, Golang, and, of course, YAML References: [1]: https://github.com/Allaman/nvim [2]: https://github.com/Allaman
Looking for inspiration? dotfiles [1] by jessarcher [2]. $HOME sweet $HOME References: [1]: https://github.com/jessarcher/dotfiles [2]: https://github.com/jessarcher

With the latest release of version of nvim 0.8.0 we get access to a new winbar feature. One thing I have long wanted somewhere in my nvim is navigation for pairing partners or anyone watching can keep track of where I am. As the driver it’s easy to keep track of the file/function you are in. But when you make big jumps in a few keystrokes it can be quite disorienting to anyone watching, and having this feedback to look at is very helpful.

“cybernetic soldier working on a rusting tape machine robot, cinematic lighting, detailed, cell shaded, 4 k, warm colours, concept art, by wlop, ilya kuvshinov, artgerm, krenz cushart, greg rutkowski, pixiv. cinematic dramatic atmosphere, sharp focus, volumetric lighting, cinematic lighting, studio quality” -s50 -W832 -H416 -C6.0 -Ak_lms -S2841371882

winbar #

nvim exposes the winbar api in lua, and you can send any text to the winbar as follows.

vim.o.winbar = "here"

You can try it for yourself right from the nvim command line.

:lua vim.o.winbar = "here"

Now you will notice one line above your file with the word here at the very beginning.

Clearing the winbar #

If you want to clear it out, you can just set it to an empty string or nil.

:lua vim.o.winbar = ""
:lua vim.o.winbar = nil

Setting up nvim-navic #

You will need to install nvim-navic if you want to use it. I added it to my plugins using Plug as follows.

call plug#begin('~/.local/share/nvim/plugged')
Plug 'SmiteshP/nvim-navic'
call plug#end()

Note! nvim-navic does require the use of the nvim lsp, so if you are not using it then maybe this won’t work for you.

I created an on_attach function long ago, cause that’s what Teej told me to do. Now I am glad I did, because it made this change super easy.

local function on_attach(client, bufnr)
    if client.server_capabilities.documentSymbolProvider then
        navic.attach(client, bufnr)
    end
end

Then you need to use that on_attach function on all of the lsp’s that you want navic to work on.

Then in a lua file you need to setup the winbar, for now I put this in my lsp-config settings file, but eventually I want to move my settings to lua and put it there.

vim.o.winbar = " %{%v:lua.vim.fn.expand('%F')%}  %{%v:lua.require'nvim-navic'.get_location()%}"

What my winbar looks like #

What I have right now is everything someone who is watching would need to know to navigate to the same place that I am in the project.

 waylonwalker/app.py   Link >  on_click
nvim-navic-example.webp

Diff #

Here are the changes that I made to to my plugins list and my lsp-config to get it.

 /home/u_walkews/.config/nvim/plugins.vim
call plug#begin('~/.local/share/nvim/plugged')
+Plug 'SmiteshP/nvim-navic'
#  /home/u_walkews/.config/nvim/lua/waylonwalker/lsp-config.lua
-local function on_attach() end
+local navic = require("nvim-navic")
+local function on_attach(client, bufnr)
+    if client.server_capabilities.documentSymbolProvider then
+        navic.attach(client, bufnr)
+    end
+end
+
+vim.o.winbar = " %{%v:lua.vim.fn.expand('%F')%}  %{%v:lua.require'nvim-navic'.get_location()%}"

GH commit #

If you want to see the change on GitHub, here is the diff

nvim-navic-setup-gh-diff.webp

Just starred nvim-navic [1] by SmiteshP [2]. It’s an exciting project with a lot to offer. Simple winbar/statusline plugin that shows your current code context References: [1]: https://github.com/SmiteshP/nvim-navic [2]: https://github.com/SmiteshP
I came across winbar.nvim [1] from fgheng [2], and it’s packed with great features and ideas. winbar config for neovim References: [1]: https://github.com/fgheng/winbar.nvim [2]: https://github.com/fgheng
Looking for inspiration? nvim-scrollbar [1] by petertriho [2]. Extensible Neovim Scrollbar References: [1]: https://github.com/petertriho/nvim-scrollbar [2]: https://github.com/petertriho