summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortslil <tslil@posteo.de>2026-04-04 17:40:18 +0100
committertslil <tslil@posteo.de>2026-04-04 17:43:21 +0100
commit0c860a57966d4c0f4ef817b9c7f378de4623a236 (patch)
treeeaf7d78bcc510ed973f2c85ab84a0159e23218cb
parent274ce02053a54112945df747cbaf3ca606842805 (diff)
[machi] store configs for river + machi + waybar
-rwxr-xr-xdarkman/background.sh11
-rw-r--r--df_dark.pngbin0 -> 19935 bytes
-rw-r--r--df_light.pngbin0 -> 19933 bytes
-rw-r--r--machi/machi.ini75
-rw-r--r--river/config.rh10
-rwxr-xr-xriver/init140
-rw-r--r--waybar/config.jsonc45
-rw-r--r--waybar/style.css73
8 files changed, 136 insertions, 218 deletions
diff --git a/darkman/background.sh b/darkman/background.sh
new file mode 100755
index 0000000..69c9a44
--- /dev/null
+++ b/darkman/background.sh
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+case "$1" in
+dark) FN=/home/tslil/media/pictures/df.png ;;
+light) FN=/home/tslil/media/pictures/df_light.png ;;
+default) exit 1 ;;
+esac
+
+WAYLAND_DISPLAY=wayland-1 awww img $FN --resize crop --transition-type none
+# killall swaybg
+# WAYLAND_DISPLAY=wayland-1 swaybg -i $FN -m fill &
diff --git a/df_dark.png b/df_dark.png
new file mode 100644
index 0000000..c37ee02
--- /dev/null
+++ b/df_dark.png
Binary files differ
diff --git a/df_light.png b/df_light.png
new file mode 100644
index 0000000..e238b24
--- /dev/null
+++ b/df_light.png
Binary files differ
diff --git a/machi/machi.ini b/machi/machi.ini
new file mode 100644
index 0000000..ae23a84
--- /dev/null
+++ b/machi/machi.ini
@@ -0,0 +1,75 @@
+[geometry]
+gap-size=8
+border-width=4
+
+[cursor]
+theme=Adwaita
+size=256
+
+[colors]
+#background=FFFFEA
+background=
+focused-border=173AC2
+unfocused-border=707880
+
+[keybindings.wm]
+reload-config=super+ctrl+shift+r
+
+[keybindings.output]
+cycle-next=super+comma
+cycle-prev=super+period
+
+[keybindings.workspace]
+cycle-next=super+u
+cycle-prev=super+o
+add-next=super+ctrl+u
+add-prev=super+ctrl+o
+move-to-next-output=super+shift+comma
+move-to-prev-output=super+shift+period
+
+[keybindings.panel]
+cycle-next=super+e
+cycle-prev=super+a
+add-next=super+ctrl+e
+add-prev=super+ctrl+a
+move-to-next-workspace=super+shift+u
+move-to-prev-workspace=super+shift+o
+move-to-next-new-workspace=super+ctrl+shift+u
+move-to-prev-new-workspace=super+ctrl+shift+o
+toggle-split-view=super+f
+
+[keybindings.window]
+cycle-next=super+i
+cycle-prev=super+h
+move-next=super+shift+i
+move-prev=super+shift+h
+split-toggle=super+tab
+split-swap=super+shift+tab
+move-to-next-panel=super+shift+e
+move-to-prev-panel=super+shift+a
+move-to-next-new-panel=super+ctrl+shift+e
+move-to-prev-new-panel=super+ctrl+shift+a
+toggle-fullscreen=super+w
+close=super+shift+k
+
+[keybindings.spawn]
+# Applications
+foot=super+t
+fuzzel=super+space
+grim_slurp=super+p
+lock=super+shift+x
+albumbler.py=super+shift+space
+foot qalc=super+slash
+handy --toggle-transcription=super+return
+# Audio
+pactl set-sink-volume 0 +2%=XF86AudioRaiseVolume
+pactl set-sink-volume 0 -2%=XF86AudioLowerVolume
+pactl set-sink-mute 0 toggle=XF86AudioMute
+mpc toggle=XF86AudioPlay
+mpc prev=XF86AudioPrev
+mpc next=XF86AudioNext
+# Brightness
+light -A 2=XF86MonBrightnessUp
+light -U 2=XF86MonBrightnessDown
+# Quit
+killall river=super+ctrl+shift+q
diff --git a/river/config.rh b/river/config.rh
new file mode 100644
index 0000000..b863026
--- /dev/null
+++ b/river/config.rh
@@ -0,0 +1,10 @@
+keyboard "AT Translated Set 2 keyboard" {
+ layout gallium
+ options ctrl:swap_lalt_lctl,ctrl:swap_rwin_rctl,ctrl:nocaps
+}
+
+touchpad {
+ tap_to_click true
+ natural_scroll false
+ accel_profile adaptive
+}
diff --git a/river/init b/river/init
index 0e2f7d1..c768b17 100755
--- a/river/init
+++ b/river/init
@@ -1,9 +1,4 @@
-#!/bin/sh
-
-# Wayland stuff
-export XDG_SESSION_TYPE=wayland
-export XDG_CURRENT_DESKTOP=sway
-export XDG_SESSION_DESKTOP=sway
+#!/usr/bin/env sh
export SDL_VIDEODRIVER=wayland
@@ -17,131 +12,12 @@ systemctl --user import-environment DISPLAY WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
hash dbus-update-activation-environment 2>/dev/null && \
dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY XDG_CURRENT_DESKTOP XDG_SESSION_DESKTOP XDG_SESSION_TYPE
-# Input methods
-riverctl keyboard-layout -options ctrl:swap_lalt_lctl,ctrl:swap_rwin_rctl vlomwide
-riverctl input pointer-2362-628-PIXA3854:00_093A:0274_Touchpad tap enabled
-riverctl xcursor-theme Adwaita 64
-gsettings set org.gnome.desktop.interface cursor-theme Adwaita
-gsettings set org.gnome.desktop.interface cursor-size 64
-
-riverctl map normal Super Escape spawn 'riverctl keyboard-layout -options ctrl:swap_lalt_lctl,ctrl:swap_rwin_rctl vlomwide'
-riverctl map normal Super+Shift Escape spawn 'riverctl keyboard-layout -options "" us'
-
-# Basic execution
-riverctl map normal Super T spawn foot
-riverctl map normal Super D spawn run
-riverctl map normal Super P spawn grim_slurp
-riverctl map normal Super+Shift X spawn lock
-riverctl map normal Super+Shift space spawn albumbler.py
-
-# Close and Quit
-riverctl map normal Super+Shift K close
-riverctl map normal Super+Shift+Control Q exit
-
-# Layouts
-riverctl map normal Super S send-layout-cmd rivercarro "main-location right"
-riverctl map normal Super R send-layout-cmd rivercarro "main-location top"
-riverctl map normal Super A send-layout-cmd rivercarro "main-location monocle"
-
-# Movement and focus
-NEXT=I
-PREV=C
-
-riverctl map normal Super $NEXT focus-view next
-riverctl map normal Super $PREV focus-view previous
-riverctl map normal Super+Shift $NEXT swap next
-riverctl map normal Super+Shift $PREV swap previous
-riverctl map normal Super Return zoom
-
-riverctl map normal Super Space toggle-float
-riverctl map normal Super G toggle-fullscreen
-
-# Outpus
-riverctl map normal Super B focus-output next
-riverctl map normal Super Comma focus-output previous
-riverctl map normal Super+Shift B send-to-output next
-riverctl map normal Super+Shift Comma send-to-output previous
-
-
-# Ratio changes
-LEFT=C
-UPK=E
-DNK=N
-RIGHT=I
-riverctl map normal Super $UPK send-layout-cmd rivercarro "main-ratio -0.05"
-riverctl map normal Super $DNK send-layout-cmd rivercarro "main-ratio +0.05"
-riverctl map normal Super+Shift $UPK send-layout-cmd rivercarro "main-count +1"
-riverctl map normal Super+Shift $DNK send-layout-cmd rivercarro "main-count -1"
-
-# Super+Alt+{H,J,K,L} to move views
-riverctl map normal Super+Alt $LEFT move left 100
-riverctl map normal Super+Alt $DNK move down 100
-riverctl map normal Super+Alt $UPK move up 100
-riverctl map normal Super+Alt $RIGHT move right 100
-
-# Floating management i don't use
-# riverctl map normal Super+Alt+Control $LEFT snap left
-# riverctl map normal Super+Alt+Control $DNK snap down
-# riverctl map normal Super+Alt+Control $UPK snap up
-# riverctl map normal Super+Alt+Control $RIGHT snap right
-# riverctl map normal Super+Alt+Shift $LEFT resize horizontal -100
-# riverctl map normal Super+Alt+Shift $DNK resize vertical 100
-# riverctl map normal Super+Alt+Shift $UPK resize vertical -100
-# riverctl map normal Super+Alt+Shift $RIGHT resize horizontal 100
-
-# Mouse floating management
-riverctl map-pointer normal Super BTN_LEFT move-view
-riverctl map-pointer normal Super+Shift BTN_LEFT resize-view
- # riverctl map-pointer normal Super BTN_MIDDLE toggle-float
-
-riverctl map normal Super Tab focus-previous-tags
-count=0
-for i in F U H period V L O M; do
- tags=$((1 << count))
- riverctl map normal Super $i set-focused-tags $tags
- riverctl map normal Super+Shift $i set-view-tags $tags
- # riverctl map normal Super+Control $i toggle-focused-tags $tags
- # riverctl map normal Super+Shift+Control $i toggle-view-tags $tags
- count=$(( 1 + count ))
-done
-
-# Passthrough mode
-riverctl declare-mode passthrough
-riverctl map normal Super F11 enter-mode passthrough
-riverctl map passthrough Super F11 enter-mode normal
-
-# Control keys
-for mode in normal locked
-do
- riverctl map $mode None XF86AudioRaiseVolume spawn "pactl set-sink-volume 0 +2%"
- riverctl map $mode None XF86AudioLowerVolume spawn "pactl set-sink-volume 0 -2%"
- riverctl map $mode None XF86AudioMute spawn "pactl set-sink-mute 0 toggle"
- riverctl map $mode None XF86AudioPlay spawn "mpc toggle"
- riverctl map $mode None XF86AudioPrev spawn "mpc previous"
- riverctl map $mode None XF86AudioNext spawn "mpc next"
- riverctl map $mode None XF86MonBrightnessUp spawn "light -A 1"
- riverctl map $mode None XF86MonBrightnessDown spawn "light -U 1"
-done
-
-# Set background and border color
-BG_COLOUR=002B36
-AC_COLOUR=FF8C00
-IN_COLOUR=586E75
-riverctl background-color 0x"$BG_COLOUR"
-riverctl border-color-focused 0x"$AC_COLOUR"
-riverctl border-color-unfocused 0x"$IN_COLOUR"
-
-# Set keyboard repeat rate
-riverctl set-repeat 50 300
-
-# Cursor follows focus
-riverctl set-cursor-warp on-focus-change
+killall channel; channel &
+killall kanshi; kanshi &
+killall gammastep; gammastep -l 51.8:-1.3 -t 5000:4000 &
+killall waybar; waybar &
+killall handy; handy --start-hidden &
-# Set the default layout generator to be rivercarro and start it.
-# River will send the process group of the init executable SIGTERM on exit.
-riverctl default-layout rivercarro
-rivercarro -main-location monocle &
+(sleep 1; killall awww-daemon; awww-daemon &) &
-# startup stuff
-riverctl spawn bar
-riverctl spawn "gammastep -l 52.2:4.5"
+machi
diff --git a/waybar/config.jsonc b/waybar/config.jsonc
index 3922b89..7831670 100644
--- a/waybar/config.jsonc
+++ b/waybar/config.jsonc
@@ -4,75 +4,62 @@
"spacing": 0,
"margin-bottom": 0,
"modules-left": [
- "sway/workspaces",
- "sway/window"
+ "custom/machi"
],
"modules-center": [
],
"modules-right": [
- "pulseaudio",
- "backlight",
"network#vpn",
"network#wifi",
+ "pulseaudio",
+ "backlight",
"temperature",
"battery",
"clock",
"tray",
],
- "sway/workspaces": {
- "persistent-workspaces": {
- "F": [],
- "O": [],
- "U": [],
- "B": [],
- "L": [],
- "D": [],
- "C": []
- },
- "alphabetical_sort": false,
- },
- "sway/window": {
- "max-length": 48,
- "min-length": 48,
- "align": 0,
+ "custom/machi": {
+ "exec": "machi_status"
},
"tray": {
"icon-size": 32,
"spacing": 10
},
"clock": {
- "format": "{:%H:%M %Y/%m/%d}",
+ "format": "| {:%a %H:%M %d/%m/%Y}",
"tooltip-format": "<tt><big>{calendar}</big></tt>",
},
"temperature": {
"interval": 10,
"hwmon-path": "/sys/class/hwmon/hwmon5/temp1_input",
- "format": "{temperatureC}°C",
+ "format": "| {temperatureC}°C",
},
"backlight": {
- "format": "{icon} {percent}%",
+ "format": "| {icon} {percent}%",
"format-icons": ["", "", "", "", "", "", "", "", ""]
},
"battery": {
- "format": "D{capacity}% {time}",
"interval": 10,
- "format-charging": "C{capacity}% {time}",
+ "format": "| U{capacity}%",
+ "format-plugged": "",
+ "format-not-charging": "| N{capacity}%",
+ "format-discharging": "| D{capacity}% {time}",
+ "format-charging": "| C{capacity}% {time}",
"format-time": "{H}h{M}m",
- "format-icons": ["", "", "", "", ""]
},
"network#vpn": {
"interface": "wg0-mullvad",
- "format-disconnected": "VPN ⚠",
+ "format-disconnected": "| VPN ⚠",
"format": "",
},
"network#wifi": {
"interface": "wlp1s0",
- "format-wifi": "{essid}",
+ "format-wifi": "| {essid}",
"tooltip-format": "{ifname}: {ipaddr}/{cidr}",
},
"pulseaudio": {
"scroll-step": 1,
- "format": "{volume}% {icon} {format_source} ",
+ "format": "| {volume}% {icon} {format_source} ",
"format-bluetooth": "{volume}% {icon} {format_source}",
"format-bluetooth-muted": " {icon} {format_source}",
"format-muted": " {format_source}",
diff --git a/waybar/style.css b/waybar/style.css
index c752399..1195817 100644
--- a/waybar/style.css
+++ b/waybar/style.css
@@ -1,17 +1,21 @@
+window#waybar {
+ border: 2px solid black;
+ background-color: black;
+}
+
* {
/* `otf-font-awesome` is required to be installed for icons */
font-family: "BQN386 Unicode DZ";
/* font-family: "PxPlus IBM VGA 9x16"; */
- font-size: 28px;
+ font-size: 26px;
padding-top: 0px;
padding-bottom: 0px;
- margin-top: 2px;
- min-height: 46px;
-}
-
-window#waybar {
- background-color: black;
- color: #ffffff;
+ padding-left: 2px;
+ padding-right: 2px;
+ min-height: 36px;
+ margin: 2px;
+ color: black;
+ background-color: #DAEFEF;
}
button {
@@ -22,62 +26,17 @@ button {
border-radius: 0;
}
-#workspaces button{
- padding-right: 6px;
- padding-left: 6px;
- color: #FF8C00;
-}
-
-#workspaces button:hover {
- background: #FF8;
-}
-
-#workspaces button.focused {
- background-color: #FF8C00;
- color: black;
-}
-
-#workspaces button.empty {
- background-color: black;
- color: grey;
-}
-
-#window {
- padding-left: 16px;
- background-color: #FF8C00;
- color: black;
-}
-
-#tags button.urgent {
- background-color: #eb4d4b;
-}
-
-#tray,
-#clock {
- padding-left: 8px;
- background-color: black;
- color: #FF8C00;
-}
-
+#custom-machi,
+#network,
+#network.wifi,
#battery,
#temperature,
#backlight,
-#network,
#pulseaudio,
+#clock,
#wireplumber {
- padding-right: 8px;
- padding-left: 8px;
- border-right: 2px solid #FF8C00;
- background-color: black;
- color: #FF8C00;
-}
-
-label:focus {
- background-color: #000000;
}
-#tray {
-}
#tray > .passive {
-gtk-icon-effect: dim;