Commit Graph

100 Commits

Author SHA1 Message Date
mpuchstein 5cf2ad9f4a hypr: migrate layout management to native Lua
Replace hypr-workspace-layout shell script with native Lua functions in
keybinds.lua. Add custom Lua layouts (master-scroll variants, swap
variants) to the SUPER+period cycle. Implement swap-on-focus via
_G._hl_ws_layouts shared global so window.active handler can check
per-workspace layout without IPC or hl.get_workspaces().
2026-05-12 04:19:10 +02:00
mpuchstein 9c7bf54cf1 hypr: replace hypr-workspace-layout shell script with native Lua
Port all layout management to Hyprland v0.55 Lua API:
- Per-workspace layout toggle/cycle via hl.workspace_rule + hl.get_active_window()
- Layout-aware move/nav/resize as pure Lua functions
- Group smart-join via hl.get_active_window().grouped
- mfact exact handlers in all custom scroll/swap layouts
- No io.popen, no exec_cmd, no IPC deadlock risk
2026-05-12 03:48:46 +02:00
mpuchstein 7b1c53cd64 refactor utilise some new hyprland features 2026-05-12 02:40:21 +02:00
mpuchstein 26303f56d8 chore updating hyprland to lua 2026-05-12 01:50:20 +02:00
mpuchstein 52344c6287 hypr: add vertical scroll layouts and swap-on-focus layouts
New scroll layouts for vertical monitors:
- top-master-scroll: master top, horizontal slave row below
- center-master-scroll-v: master center, slave rows above and below

New swap-on-focus layouts (focusing a slave promotes it to master):
- master-swap: master left, slaves right
- slave-master-swap: master right, slaves left
- top-master-swap: master top, slaves bottom

Shared place_scroll_row helper (horizontal mirror of place_scroll_col).
Guard recalc dispatch by layout name to avoid errors from built-in layouts.
2026-05-12 01:29:25 +02:00
mpuchstein f1d3128d99 cs2: tweak crosshair and clean up trailing whitespace
Reduce crosshair size/thickness, switch to color 4, disable friendly
warning. No functional changes to bind/training sections.
2026-05-12 01:05:02 +02:00
mpuchstein dc81dc9327 gemini: remove apex theme files 2026-05-12 01:04:44 +02:00
mpuchstein 83abff3344 config: add java mime handler for zed and XDG_PROJECTS_DIR 2026-05-12 01:04:32 +02:00
mpuchstein 314262c56b zed: reset to local-only panel layout config
Remove SSH connection and legacy options; keep panel dock positions.
2026-05-12 01:04:24 +02:00
mpuchstein 029191654c zsh: fix prompt git status parsing and add pnpm to PATH
Use process substitution instead of herestring for git status loop to
avoid issues with special characters. Add pnpm home to PATH in zshrc.
2026-05-12 01:04:17 +02:00
mpuchstein d53bc5dadb hypr: migrate to Lua config (v0.55) with custom scroll layouts
Replace hyprlang hyprland.d/ with Lua-based hyprland.d.lua/ modules:
- theme.lua.tmpl: apex-neon + apex-aeon color tables, col.* bracket keys
- general.lua: config, bezier curves, animations (bezier=/spring= fixed)
- monitors.lua.tmpl, workspaces.lua.tmpl, input.lua.tmpl, rules.lua.tmpl
- keybinds.lua.tmpl: +/SHIFT/CTRL format, monitor focus (Super+I/O),
  scroll binds for custom layouts
- layout.lua: master-scroll, slave-master-scroll, center-master-scroll
  (peek-hint scrolling slave columns, focus-triggered auto-scroll)

Entry point uses package.path + require() for per-file error isolation.
Old hyprlang configs preserved under hyprland.conf.bak/.
Add .luarc.json for hyprland stub autocompletion in editors.
2026-05-12 01:00:42 +02:00
mpuchstein 96352e2af4 docs: update hyprland wiki to v0.55 2026-05-11 21:14:26 +02:00
mpuchstein 0c82f00884 fix: k8s-metrics non-fatal resourcequota failure keeps pod metrics alive 2026-04-22 02:00:38 +02:00
mpuchstein e868eb29aa k8s-widget: add KubernetesPopout and complete bar wiring 2026-04-22 01:49:40 +02:00
mpuchstein 7261824837 fix: deduplicate status color and guard stale 0/0 in KubernetesPill 2026-04-22 01:45:02 +02:00
mpuchstein 222e01c562 k8s-widget: add KubernetesPill to bar 2026-04-22 01:40:31 +02:00
mpuchstein 8b5e5e392d k8s-widget: add Kubernetes.qml singleton 2026-04-22 01:23:51 +02:00
mpuchstein 4cd2956f18 fix: k8s-metrics exit code and CPU label format 2026-04-22 01:20:42 +02:00
mpuchstein b43ae65747 k8s-widget: fix metrics aggregation for multi-replica apps 2026-04-22 01:14:21 +02:00
mpuchstein a2e6c23d58 k8s-widget: add k8s-metrics.sh 2026-04-22 01:11:56 +02:00
mpuchstein 5dafcfec0e k8s-widget: add k8s-status.sh 2026-04-22 01:04:42 +02:00
mpuchstein 1cfc32ff3b k8s-widget: add kube config properties 2026-04-22 01:01:27 +02:00
mpuchstein f9f079db7e owlry: track plugins directory 2026-04-12 14:04:29 +02:00
mpuchstein b69728ed3b nvim,tmux: move split nav to Alt+hjkl, add tab cycling, set DIFFPROG
- smart-splits: C-hjkl → A-hjkl for split/pane navigation
- tmux: C-hjkl → M-hjkl to keep seamless smart-splits integration
- keymaps: add A-Tab / A-S-Tab for vim tab cycling
- profile: set DIFFPROG="nvim -d" for pacdiff
2026-04-12 13:26:26 +02:00
mpuchstein 7dbd0f18c3 removed the lock.json because unnecessary to track 2026-04-12 00:55:57 +02:00
mpuchstein 19c6591658 nvim: fill gaps, add knap.nvim, clean up stubs
- Java DAP: add java-debug-adapter + java-test via mason, populate
  jdtls bundles with debug/test JARs
- neotest: add marilari88/neotest-vitest adapter
- git: promote diffview.nvim to first-class plugin with keymaps
  (<leader>gD diff, <leader>gH file history)
- pandoc: replace stub with knap.nvim for live markdown→PDF preview
  via pandoc + lualatex + zathura (<leader>mp toggle, <leader>mj jump)
- remove 17 empty stub files left over from AstroNvim migration
2026-04-12 00:54:55 +02:00
mpuchstein 4acd9c70f4 owlry,htop: update configs 2026-04-10 00:22:42 +02:00
mpuchstein c4a42591b5 nvim: update lazy-lock.json 2026-04-10 00:19:15 +02:00
mpuchstein 46a1f0772b nvim: add tree-sitter-manager.nvim for parser management on Neovim 0.12 2026-04-10 00:15:53 +02:00
mpuchstein 198a173b4d nvim: drop nvim-treesitter (archived, broken on 0.12), replace with mini.ai 2026-04-10 00:06:05 +02:00
mpuchstein 07839d9c20 nvim: move markdown injection override to queries/ (not after/queries/) to replace nvim-treesitter's 2026-04-09 23:55:26 +02:00
mpuchstein ec1c05b70a nvim: override markdown injections for Neovim 0.12 treesitter API compat 2026-04-09 23:53:48 +02:00
mpuchstein 5902211b62 nvim: fix M.lualine scope — move after M.load() so M.palette is populated 2026-04-09 23:38:45 +02:00
mpuchstein 16a1500e69 nvim: remove rustfmt from mason (managed by rustup) 2026-04-09 23:34:41 +02:00
mpuchstein ca2b441bb7 nvim,tmux,kitty: full config overhaul (AstroNvim → native 0.12)
Replaces AstroNvim v5 with from-scratch Neovim 0.12 config using
vim.lsp.config()/vim.lsp.enable() natively, lazy.nvim, blink.cmp,
and smart-splits tmux integration.

tmux: new C-Space prefix, hjkl pane nav, resize key table, tpm plugins.
kitty: add allow_remote_control for smart-splits.
2026-04-09 23:30:34 +02:00
mpuchstein d5d890aa43 quickshell: add systemd service and system popout update/ALHP status improvements
- Add quickshell.service for systemd --user autostart
- Add ALHP status indicators (good/stale/building) with color-coded icons
- Make updates and ALHP building rows expandable with animated chevron
- Capture full checkupdates package list for expand drawer
- Parse alhp.utils packages array for ALHP expand drawer

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-05 23:44:23 +02:00
mpuchstein c5f7162ebb quickshell: add initial bar config with per-monitor workspaces
- Vertical bar on DP-2 with rounded-square pills throughout
- Per-monitor workspace groups sorted by screen x position, with
  Nerd Font icons for named workspaces and apex-neon red active indicator
- Bar layout: datetime+weather top, workspaces centered, gamemode+media+notif+system bottom
- Popouts anchor to triggering icon (top-right for datetime/weather, bottom-right for media/notif/system)
- Lock command switched from hyprlock to swaylock
- Hyprland blur/ignore_alpha layerrules for quickshell namespace

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-05 20:00:54 +02:00
Matthias Puchstein 6e55544c42 awww: rename swww → awww across services and scripts
Replace swww-daemon with awww-daemon in the systemd unit, update
awww-manager-random.service dependency, and update the default backend
in config.toml.tmpl and awww-manager.py.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-26 14:40:30 +01:00
Matthias Puchstein 9161efab66 added a keybind for small brightness changes 2026-03-25 03:24:31 +01:00
mpuchstein b571497a81 added nvim spell to chezmoi 2026-03-25 03:23:40 +01:00
Matthias Puchstein 7a61586feb awww: make config template-driven from data.monitors
Replaces hardcoded outputs with a range over .chezmoi.config.data.monitors,
using optional wallpaper-dir, wallpaper-resize, wallpaper-filter, and
wallpaper-transition-type keys per monitor entry.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-22 20:44:18 +01:00
mpuchstein f97689afb3 still a lingering symlink found 2026-03-22 20:33:58 +01:00
mpuchstein 8b97d14bbf hypr: add HDR monitor options and convert rules to template
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-20 23:44:19 +01:00
mpuchstein 5549369a5c made the named workspaces keybinds also use index and added the cursor theme to chezmoi 2026-03-16 15:47:35 +01:00
mpuchstein fb2a360762 hyprpaper got removed in favor of awww a long time ago 2026-03-16 15:16:46 +01:00
Matthias Puchstein 90f54a4be8 uwsm env fix? 2026-03-16 14:58:37 +01:00
mpuchstein 17c577c9ac simplified workspaces 2026-03-16 13:15:11 +01:00
Matthias Puchstein 59be243b0d some cleanup as I am setting up the surface 2026-03-16 11:54:40 +01:00
Matthias Puchstein cc6289c122 waybar: fix workspace config block priority to match module selection
Hyprland was checked first for the module name but niri was checked
first for the config block, so on machines with both tags the
hyprland/workspaces module had no config and thus no format-icons.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-16 00:39:43 +01:00
Matthias Puchstein 081e104584 some cleanup as I am setting up the surface 2026-03-16 00:32:59 +01:00