Compare commits

..
6 Commits
Author SHA1 Message Date
tgrosinger 1b4bfa3e7e Waybar: add new memory widget 2026-09-15 13:38:26 -07:00
tgrosinger 35aa88b549 Atuin: Disable tmux integration
This causes a problem when using a terminal in Remote Agent Console.
2026-09-15 13:38:05 -07:00
tgrosinger 8ab7e9f91e Skills: Add openscad skill 2026-09-15 13:37:38 -07:00
tgrosinger 2c5d9a135a Fish: Helper function to convert svg files to gcode 2026-09-11 21:28:20 -07:00
tgrosinger 4b6d096c1d Waybar: Fix btop path 2026-09-11 21:28:20 -07:00
tgrosinger 9fdf20d936 Fish: Move worktrees into repo.worktrees directory 2026-09-11 21:28:20 -07:00
9 changed files with 58 additions and 8 deletions
+3
View File
@@ -1,3 +1,6 @@
[submodule "mattpocock-skills"] [submodule "mattpocock-skills"]
path = mattpocock-skills path = mattpocock-skills
url = ssh://git@git.grosinger.net:22322/tgrosinger/mattpocock-skills.git url = ssh://git@git.grosinger.net:22322/tgrosinger/mattpocock-skills.git
[submodule "openscad"]
path = home/.agents/skills/openscad
url = git@github.com:ModelRift/openscad-skill.git
+1 -1
View File
@@ -23,6 +23,6 @@ history_filter = [
filters = [ "global", "host", "workspace", "directory" ] filters = [ "global", "host", "workspace", "directory" ]
[tmux] [tmux]
enabled = true enabled = false
width = "80%" width = "80%"
height = "60%" height = "60%"
+3 -3
View File
@@ -30,9 +30,9 @@ function dev-wt-pr -d "Open a GitHub PR in a worktree in a new tmux window (Octo
set -l main_wt_path (git worktree list --porcelain | head -1 | string replace "worktree " "") set -l main_wt_path (git worktree list --porcelain | head -1 | string replace "worktree " "")
set -l parent_dir (dirname "$main_wt_path") set -l parent_dir (dirname "$main_wt_path")
# Key the worktree on the PR number to stay unique and avoid slashes in # Group in the per-repo worktree container; key on the PR number to stay
# branch names producing nested directories. # unique and avoid slashes in branch names producing nested directories.
set -l wt_path "$parent_dir/$repo-pr-$pr_number" set -l wt_path "$parent_dir/$repo.worktrees/pr-$pr_number"
# Create the worktree if it doesn't already exist. # Create the worktree if it doesn't already exist.
if not test -d "$wt_path" if not test -d "$wt_path"
+3 -1
View File
@@ -62,7 +62,9 @@ function __dev_wt_impl -a name
if test -z "$wt_path" if test -z "$wt_path"
set -l main_wt_path (git worktree list --porcelain | head -1 | string replace "worktree " "") set -l main_wt_path (git worktree list --porcelain | head -1 | string replace "worktree " "")
set -l parent_dir (dirname "$main_wt_path") set -l parent_dir (dirname "$main_wt_path")
set wt_path "$parent_dir/$repo-$name" # Group worktrees in a per-repo container so they don't look like sibling
# projects (e.g. ~/obsidian/community.worktrees/workers, not community-workers).
set wt_path "$parent_dir/$repo.worktrees/$name"
set wt_branch "$name" set wt_branch "$name"
if test -d "$wt_path" if test -d "$wt_path"
@@ -0,0 +1,19 @@
# Requires vpype with gcode extension.
# uv tool install "vpype[all]" --with vpype-gcode
function svg2gcode -d "Convert an SVG to gcode for the Shapeoko pen plotter using vpype" -a input
set -l output (string replace -r '\.svg$' '.gcode' $input)
vpype \
# Load the SVG into the pipeline (curves are linearized to polylines)
read $input \
# Join lines whose endpoints nearly touch into single paths
linemerge \
# Reorder paths to minimize pen-up travel between them
linesort \
# Randomize where each closed path starts, hiding the seam mark
reloop \
# Drop redundant points within the default deviation tolerance
linesimplify \
# Emit gcode using the "shapeoko_pen" profile from the vpype config
gwrite --profile shapeoko_pen $output
end
+9 -2
View File
@@ -23,7 +23,7 @@
"network", "network",
"power-profiles-daemon", "power-profiles-daemon",
"cpu", "cpu",
//"memory", "custom/memtmp",
//"temperature", //"temperature",
"backlight", "backlight",
//"sway/language", //"sway/language",
@@ -167,7 +167,14 @@
"cpu": { "cpu": {
"format": "{usage}% ", "format": "{usage}% ",
"tooltip": false, "tooltip": false,
"on-click": "alacritty -e /home/linuxbrew/.linuxbrew/bin/btop" "on-click": "alacritty -e /home/tgrosinger/.local/share/mise/shims/btop"
},
"custom/memtmp": {
"exec": "bash $HOME/.config/waybar/memtmp.sh",
"return-type": "json",
"interval": 5,
"format": "{}",
"on-click": "alacritty -e /home/tgrosinger/.local/share/mise/shims/btop"
}, },
"memory": { "memory": {
"format": "{}% " "format": "{}% "
+17
View File
@@ -0,0 +1,17 @@
#!/usr/bin/env bash
# Waybar custom module: available RAM (GiB) and current /tmp usage.
#
# Available RAM uses MemAvailable, the kernel's honest "allocatable without
# swapping" figure. /tmp is tmpfs, so its used space is live RAM consumption;
# df -h auto-scales the unit (it is usually in the MB range).
set -euo pipefail
MEM_ICON=$''
TMP_ICON=$''
avail_gib=$(awk '/^MemAvailable:/ {printf "%.1f", $2/1048576}' /proc/meminfo)
read -r tmp_used tmp_size < <(df -h --output=used,size /tmp | awk 'NR==2 {print $1, $2}')
printf '{"text":"%sG %s %s %s","tooltip":"RAM available: %s GiB\\n/tmp used: %s of %s"}\n' \
"$avail_gib" "$MEM_ICON" "$tmp_used" "$TMP_ICON" \
"$avail_gib" "$tmp_used" "$tmp_size"
+2 -1
View File
@@ -1,7 +1,7 @@
@import "latte.css"; @import "latte.css";
* { * {
font-family: 'JetBrainsMono'; font-family: 'JetBrainsMono Nerd Font';
font-size: 13px; font-size: 13px;
} }
@@ -89,6 +89,7 @@ button:hover {
#battery, #battery,
#cpu, #cpu,
#memory, #memory,
#custom-memtmp,
#disk, #disk,
#temperature, #temperature,
#backlight, #backlight,