- commit
- 2cb23f7
- parent
- 0ce4da3
- author
- Eric Bower
- date
- 2025-10-26 14:14:41 -0400 EDT
refactor: use river, rivercarro, and waybar I thought I could get away with no status bar, but it ended up being annoying
4 files changed,
+34,
-97
+1,
-2
1@@ -1,6 +1,6 @@
2 fish_config theme choose "dracula"
3
4-fish_add_path ~/.deno/bin ~/.yarn/bin ~/go/bin ~/.npm-packages/bin ~/bin /usr/local/go/bin ~/.cargo/bin ~/neovim/bin ~/.local/bin
5+fish_add_path ~/.local/bin /usr/local/go/bin ~/neovim/bin ~/.cargo/bin ~/.yarn/bin ~/.npm-packages/bin
6
7 switch (uname)
8 case Darwin
9@@ -8,7 +8,6 @@ switch (uname)
10 fish_add_path /opt/homebrew/bin
11 fish_add_path ~/.local/bin
12 case Linux
13- # set -xg OLLAMA_API_BASE "http://0.0.0.0:11434"
14 set -xg OPENAI_API_BASE "http://192.168.88.109:8080"
15 set -xg OPENAI_API_KEY ""
16 case '*'
+23,
-84
1@@ -1,132 +1,71 @@
2 #!/bin/sh
3
4-# This is the example configuration file for river.
5-#
6 # If you wish to edit this, you will probably want to copy it to
7 # $XDG_CONFIG_HOME/river/init or $HOME/.config/river/init first.
8-#
9 # See the river(1), riverctl(1), and rivertile(1) man pages for complete
10 # documentation.
11 # Note: the "Super" modifier is also known as Logo, GUI, Windows, Mod4, etc.
12
13-# Set keyboard repeat rate
14+riverctl keyboard-layout -options "caps:swapescape" us
15 riverctl set-repeat 25 300
16
17 riverctl map normal Mod1 Return spawn foot
18 riverctl map normal Mod1 D spawn bemenu-run
19
20-# close the focused view
21-riverctl map normal Mod1 Q close
22-
23-# exit river
24-riverctl map normal Mod1+Shift E exit
25+riverctl map normal Mod1 Q close # close the focused view
26+riverctl map normal Mod1+Shift E exit # exit river
27
28 # focus the next/previous view in the layout stack
29 riverctl map normal Mod1 J focus-view next
30 riverctl map normal Mod1 K focus-view previous
31
32-# swap the focused view with the next/previous
33-# view in the layout stack
34+# swap the focused view with the next/previous view in the layout stack
35 riverctl map normal Mod1+Shift J swap next
36 riverctl map normal Mod1+Shift K swap previous
37-
38-# focus the next/previous output
39-riverctl map normal Mod1 Period focus-output next
40-riverctl map normal Mod1 Comma focus-output previous
41-
42 # bump the focused view to the top of the layout stack
43 riverctl map normal Mod1+Shift Return zoom
44
45-# increment/decrement the main count of rivertile(1)
46-riverctl map normal Mod1+Shift H send-layout-cmd rivertile "main-count +1"
47-riverctl map normal Mod1+Shift L send-layout-cmd rivertile "main-count -1"
48-
49-# move views
50-riverctl map normal Super H move left 100
51-riverctl map normal Super J move down 100
52-riverctl map normal Super K move up 100
53-riverctl map normal Super L move right 100
54-riverctl map-pointer normal Mod1 BTN_LEFT move-view
55-
56-# resize views
57 riverctl map-pointer normal Mod1 BTN_RIGHT resize-view
58-
59-# toggle float
60-riverctl map-pointer normal Mod1 BTN_MIDDLE toggle-float
61+riverctl map normal Mod1 Space toggle-float
62+riverctl map normal Mod1 F toggle-fullscreen
63
64 for i in $(seq 1 9)
65 do
66 tags=$((1 << ($i - 1)))
67-
68- # focus tag [0-8]
69 riverctl map normal Mod1 $i set-focused-tags $tags
70-
71- # tag focused view with tag [0-8]
72 riverctl map normal Mod1+Shift $i set-view-tags $tags
73-
74- # toggle focus of tag [0-8]
75 riverctl map normal Mod1+Control $i toggle-focused-tags $tags
76-
77- # toggle tag [0-8] of focused view
78 riverctl map normal Mod1+Shift+Control $i toggle-view-tags $tags
79 done
80
81-# toggle float
82-riverctl map normal Mod1 Space toggle-float
83-
84-# toggle fullscreen
85-riverctl map normal Mod1 F toggle-fullscreen
86-
87-# change layout orientation
88-riverctl map normal Mod1 Up send-layout-cmd rivertile "main-location top"
89-riverctl map normal Mod1 Right send-layout-cmd rivertile "main-location right"
90-riverctl map normal Mod1 Down send-layout-cmd rivertile "main-location bottom"
91-riverctl map normal Mod1 Left send-layout-cmd rivertile "main-location left"
92-
93-# Various media key mapping examples for both normal and locked mode which do
94-# not have a modifier
95 for mode in normal locked
96 do
97- # Control pulse audio volume with pamixer (https://github.com/cdemoulins/pamixer)
98- riverctl map $mode None XF86AudioRaiseVolume spawn 'pamixer -i 5'
99- riverctl map $mode None XF86AudioLowerVolume spawn 'pamixer -d 5'
100- riverctl map $mode None XF86AudioMute spawn 'pamixer --toggle-mute'
101-
102- # Control screen backlight brightness with brightnessctl (https://github.com/Hummer12007/brightnessctl)
103- riverctl map $mode None XF86MonBrightnessUp spawn 'light -A 1'
104- riverctl map $mode None XF86MonBrightnessDown spawn 'light -U 1'
105+ riverctl map -repeat $mode None XF86AudioRaiseVolume spawn 'pamixer -i 5'
106+ riverctl map -repeat $mode None XF86AudioLowerVolume spawn 'pamixer -d 5'
107+ riverctl map -repeat $mode None XF86AudioMute spawn 'pamixer --toggle-mute'
108+ riverctl map -repeat $mode None XF86MonBrightnessUp spawn 'light -A 1'
109+ riverctl map -repeat $mode None XF86MonBrightnessDown spawn 'light -U 1'
110 done
111
112-# Set background and border color
113-riverctl borrder-width 2
114+riverctl border-width 3
115 riverctl background-color 0x282a36
116 riverctl border-color-focused 0xbd93f9
117 riverctl border-color-unfocused 0x81859b
118
119-# Set keyboard layout to us and remap capslock to escape
120-riverctl keyboard-layout -options "caps:swapescape" us
121-
122-# Configure trackpad settings.
123-# Replace <trackpad_name> with the name of your trackpad.
124-# You can find the name of your trackpad by running `riverctl list-inputs`
125+wlr-randr --output eDP-1 --scale 1.7 # laptop display scale
126+# `riverctl list-inputs`
127 riverctl input pointer-2362-628-PIXA3854:00_093A:0274_Touchpad tap enabled
128
129-# Make all views with an app-id that starts with "float" and title "foo" start floating.
130-riverctl rule-add -app-id 'float*' -title 'foo' float
131-
132-# Make all views with app-id "bar" and any title use client-side decorations
133-riverctl rule-add -app-id "bar" csd
134-
135-# Set the default layout generator to be rivertile and start it.
136-# River will send the process group of the init executable SIGTERM on exit.
137-riverctl default-layout rivertile
138-rivertile -main-ratio 0.7 -view-padding 5 -outer-padding 0 &
139-
140-wlr-randr --output eDP-1 --scale 1.7
141+riverctl map normal Mod1 W send-layout-cmd rivercarro "main-location-cycle monocle,left"
142+riverctl default-layout rivercarro
143+rivercarro -inner-gaps 3 -outer-gaps 0 &
144+riverctl send-layout-cmd rivercarro "main-location monocle"
145
146-# Start gammastep for color temperature adjustment
147+# status bar
148+waybar &
149+# color temperature adjustment
150 gammastep -l 42.265385:-83.716557 -t 6500:3500 &
151-# Set GNOME font settings
152+# GNOME font settings
153 gsettings set org.gnome.desktop.interface font-name 'Noto Sans 10'
154-# Start notification daemon
155+# notification daemon
156 mako &
+9,
-10
1@@ -1,8 +1,8 @@
2 {
3 "layer": "top",
4 "position": "bottom",
5- "modules-left": ["sway/workspaces"],
6- "modules-center": ["sway/window"],
7+ "modules-left": ["river/tags", "river/layout"],
8+ "modules-center": ["river/window"],
9 "modules-right": ["battery", "backlight", "pulseaudio", "network", "clock"],
10
11 "pulseaudio": {
12@@ -15,15 +15,14 @@
13 "default": ["", "", " "]
14 }
15 },
16- "sway/workspaces": {
17- "disable-scroll": true,
18- "all-outputs": true,
19- "format": "{name}"
20- },
21- "dwl/tags": {
22+ "river/tags": {
23 "num-tags": 5,
24- "tag-labels": [ "1", "2", "3", "4", "5" ],
25- "disable-click": false
26+ "tag-labels": [ "1", "2", "3", "4", "5" ]
27+ },
28+ "river/layout": {
29+ "format": "{}",
30+ "min-length": 4,
31+ "align": "right"
32 },
33 "network": {
34 "tooltip": false,
+1,
-1
1@@ -15,7 +15,7 @@ TRACKED_FILES=(
2 )
3
4 TRACKED_LOCATIONS=(
5- ~/bin/
6+ ~/.local/bin/
7 ~/.config/
8 ~/.gitconfig
9 ~/.tmux.conf