add river config to repo, other various changes

master
Alex 2022-12-21 13:53:32 -06:00
parent e9cd5ba8f9
commit 841aa27f8c
8 changed files with 368 additions and 1 deletions

View File

@ -2,6 +2,7 @@
img () {
chafa "$1" --size="$2"x"$3" | sed 's/#/\n#/g'
#chafa --format=symbols "$1" --size="$2"x"$3"
}
W="$(($(tput cols)/2 - 10))"
@ -19,6 +20,7 @@ case "$fn" in
*.rar) unrar l "$1";;
*.7z) 7z l "$1";;
*.jpg | *.JPG | *.jpeg) img "$fn" "$w" "$h";;
*.webp) img "$fn" "$w" "$h";;
*.png | *.svg | *.gif) img "$fn" "$w" "$h";; #viu -t "$1" -w "$W" ;; #chafa "$fn" --size="$w"x"$h" ;;
*.mp4 | *.mkv | *.webm | *.avi | *.mpg | *.mpeg | *.ogv | *.flv | *.wmv | *.WMV) ffmpegthumbnailer -i "$fn" -c jpeg -o - | img - "$w" "$h";;
*.pdf) pdftotext "$1" -;;

View File

@ -13,6 +13,8 @@ call plug#begin('~/.local/share/nvim/plugged')
Plug 'dense-analysis/ale'
Plug 'chriskempson/base16-vim'
Plug 'ziglang/zig.vim'
"language support
Plug 'tbastos/vim-lua'
call plug#end()

176
.config/river/init Executable file
View File

@ -0,0 +1,176 @@
#!/bin/sh
# This is the example configuration file for river.
#
# If you wish to edit this, you will probably want to copy it to
# $XDG_CONFIG_HOME/river/init or $HOME/.config/river/init first.
#
# See the river(1), riverctl(1), and rivertile(1) man pages for complete
# documentation.
# Note: the ""$MOD"" modifier is also known as Logo, GUI, Windows, Mod4, etc.
MOD="Alt"
# "$MOD"+Shift+Return to start an instance of foot (https://codeberg.org/dnkl/foot)
riverctl map normal "$MOD"+Shift Return spawn foot
# "$MOD"+Q to close the focused view
riverctl map normal "$MOD" Q close
# "$MOD"+Shift+E to exit river
riverctl map normal "$MOD"+Shift E exit
# "$MOD"+J and Super+K to focus the next/previous view in the layout stack
riverctl map normal "$MOD" J focus-view next
riverctl map normal "$MOD" K focus-view previous
# "$MOD"+Shift+J and Super+Shift+K to swap the focused view with the next/previous
# view in the layout stack
riverctl map normal "$MOD"+Shift J swap next
riverctl map normal "$MOD"+Shift K swap previous
# "$MOD"+Period and Super+Comma to focus the next/previous output
riverctl map normal "$MOD" Period focus-output next
riverctl map normal "$MOD" Comma focus-output previous
# "$MOD"+Shift+{Period,Comma} to send the focused view to the next/previous output
riverctl map normal "$MOD"+Shift Period send-to-output next
riverctl map normal "$MOD"+Shift Comma send-to-output previous
# "$MOD"+Return to bump the focused view to the top of the layout stack
riverctl map normal "$MOD" Return zoom
# "$MOD"+H and Super+L to decrease/increase the main ratio of rivertile(1)
riverctl map normal "$MOD" H send-layout-cmd rivertile "main-ratio -0.05"
riverctl map normal "$MOD" L send-layout-cmd rivertile "main-ratio +0.05"
# "$MOD"+Shift+H and Super+Shift+L to increment/decrement the main count of rivertile(1)
riverctl map normal "$MOD"+Shift H send-layout-cmd rivertile "main-count +1"
riverctl map normal "$MOD"+Shift L send-layout-cmd rivertile "main-count -1"
# "$MOD"+Alt+{H,J,K,L} to move views
#riverctl map normal "$MOD"+Alt H move left 100
#riverctl map normal "$MOD"+Alt J move down 100
#riverctl map normal "$MOD"+Alt K move up 100
#riverctl map normal "$MOD"+Alt L move right 100
# "$MOD"+Alt+Control+{H,J,K,L} to snap views to screen edges
#riverctl map normal "$MOD"+Alt+Control H snap left
#riverctl map normal "$MOD"+Alt+Control J snap down
#riverctl map normal "$MOD"+Alt+Control K snap up
#riverctl map normal "$MOD"+Alt+Control L snap right
# "$MOD"+Alt+Shif+{H,J,K,L} to resize views
#riverctl map normal "$MOD"+Alt+Shift H resize horizontal -100
#riverctl map normal "$MOD"+Alt+Shift J resize vertical 100
#riverctl map normal "$MOD"+Alt+Shift K resize vertical -100
#riverctl map normal "$MOD"+Alt+Shift L resize horizontal 100
# "$MOD" + Left Mouse Button to move views
riverctl map-pointer normal "$MOD" BTN_LEFT move-view
# "$MOD" + Right Mouse Button to resize views
riverctl map-pointer normal "$MOD" BTN_RIGHT resize-view
for i in $(seq 1 9)
do
tags=$((1 << ($i - 1)))
# "$MOD"+[1-9] to focus tag [0-8]
riverctl map normal "$MOD" $i set-focused-tags $tags
# "$MOD"+Shift+[1-9] to tag focused view with tag [0-8]
riverctl map normal "$MOD"+Shift $i set-view-tags $tags
# "$MOD"+Ctrl+[1-9] to toggle focus of tag [0-8]
riverctl map normal "$MOD"+Control $i toggle-focused-tags $tags
# "$MOD"+Shift+Ctrl+[1-9] to toggle tag [0-8] of focused view
riverctl map normal "$MOD"+Shift+Control $i toggle-view-tags $tags
done
# "$MOD"+0 to focus all tags
# "$MOD"+Shift+0 to tag focused view with all tags
all_tags=$(((1 << 32) - 1))
riverctl map normal "$MOD" 0 set-focused-tags $all_tags
riverctl map normal "$MOD"+Shift 0 set-view-tags $all_tags
# "$MOD"+Space to toggle float
riverctl map normal "$MOD" Space toggle-float
# "$MOD"+F to toggle fullscreen
riverctl map normal "$MOD" F toggle-fullscreen
# "$MOD"+{Up,Right,Down,Left} to change layout orientation
riverctl map normal "$MOD" Up send-layout-cmd rivertile "main-location top"
riverctl map normal "$MOD" Right send-layout-cmd rivertile "main-location right"
riverctl map normal "$MOD" Down send-layout-cmd rivertile "main-location bottom"
riverctl map normal "$MOD" Left send-layout-cmd rivertile "main-location left"
# Declare a passthrough mode. This mode has only a single mapping to return to
# normal mode. This makes it useful for testing a nested wayland compositor
riverctl declare-mode passthrough
# "$MOD"+F11 to enter passthrough mode
riverctl map normal "$MOD" F11 enter-mode passthrough
# "$MOD"+F11 to return to normal mode
riverctl map passthrough "$MOD" F11 enter-mode normal
# Various media key mapping examples for both normal and locked mode which do
# not have a modifier
for mode in normal locked
do
# Eject the optical drive (well if you still have one that is)
riverctl map $mode None XF86Eject spawn 'eject -T'
# Control pulse audio volume with pamixer (https://github.com/cdemoulins/pamixer)
riverctl map $mode None XF86AudioRaiseVolume spawn 'vol.sh -i 0.02'
riverctl map $mode None XF86AudioLowerVolume spawn 'vol.sh -d 0.02'
riverctl map $mode None XF86AudioMute spawn 'vol.sh --toggle-mute'
# Control MPRIS aware media players with playerctl (https://github.com/altdesktop/playerctl)
riverctl map $mode None XF86AudioMedia spawn 'playerctl play-pause'
riverctl map $mode None XF86AudioPlay spawn 'playerctl play-pause'
riverctl map $mode None XF86AudioPrev spawn 'playerctl previous'
riverctl map $mode None XF86AudioNext spawn 'playerctl next'
# Control screen backlight brighness with light (https://github.com/haikarainen/light)
riverctl map $mode None XF86MonBrightnessUp spawn 'brightnessctl set 5%+'
riverctl map $mode None XF86MonBrightnessDown spawn 'brightnessctl set 5%-'
done
#custom config
riverctl set-cursor-warp on-output-change
#riverctl input INPUT_POINTER_NAME accel-profile flat
riverctl map normal "$MOD" P spawn bemenu-run
riverctl focus-follows-cursor normal
riverctl spawn ~/.init.sh
#startup programs
riverctl spawn waybar
riverctl spawn ~/.local/scripts/gammastep-init.sh
riverctl spawn udiskie
riverctl kanshi
# Set background and border color
riverctl background-color 0x002b36
riverctl border-color-focused 0x93a1a1
riverctl border-color-unfocused 0x586e75
# Set keyboard repeat rate
riverctl set-repeat 50 300
# Make certain views start floating
riverctl float-filter-add app-id float
riverctl float-filter-add title "popup title with spaces"
# Set app-ids and titles of views which should use client side decorations
riverctl csd-filter-add app-id "gedit"
# Set and exec into the default layout generator, rivertile.
# River will send the process group of the init executable SIGTERM on exit.
riverctl default-layout rivertile
exec rivertile -view-padding 6 -outer-padding 6

167
.config/waybar/river-config Normal file
View File

@ -0,0 +1,167 @@
{
// "layer": "top", // Waybar at top layer
// "position": "bottom", // Waybar position (top|bottom|left|right)
"height": 30, // Waybar height (to be removed for auto height)
// "width": 1280, // Waybar width
"spacing": 4, // Gaps between modules (4px)
// Choose the order of the modules
"modules-left": ["river/tags","river/mode","river/window","custom/media"],
//"modules-center": ["river/window"],
"modules-right": ["mpd", "idle_inhibitor", "pulseaudio", "network", "cpu", "temperature", "keyboard-state", "battery", "battery#bat2", "clock", "tray"],
// Modules configuration
// "sway/workspaces": {
// "disable-scroll": true,
// "all-outputs": true,
// "format": "{name}: {icon}",
// "format-icons": {
// "1": "",
// "2": "",
// "3": "",
// "4": "",
// "5": "",
// "urgent": "",
// "focused": "",
// "default": ""
// }
// },
"river/tags": {
"num-tags": 9
},
"river/mode": {
"format": "mode: {}"
},
"river/window": {
"format": "{}"
},
"keyboard-state": {
"numlock": true,
"capslock": true,
"format": "{name} {icon}",
"format-icons": {
"locked": "",
"unlocked": ""
}
},
"mpd": {
"format": "{stateIcon} {consumeIcon}{randomIcon}{repeatIcon}{singleIcon}{artist} - {album} - {title} ({elapsedTime:%M:%S}/{totalTime:%M:%S}) ⸨{songPosition}|{queueLength}⸩ {volume}% ",
"format-disconnected": "Disconnected ",
"format-stopped": "{consumeIcon}{randomIcon}{repeatIcon}{singleIcon}Stopped ",
"unknown-tag": "N/A",
"interval": 2,
"consume-icons": {
"on": " "
},
"random-icons": {
"off": "<span color=\"#f53c3c\"></span> ",
"on": " "
},
"repeat-icons": {
"on": " "
},
"single-icons": {
"on": "1 "
},
"state-icons": {
"paused": "",
"playing": ""
},
"tooltip-format": "MPD (connected)",
"tooltip-format-disconnected": "MPD (disconnected)"
},
"idle_inhibitor": {
"format": "{icon}",
"format-icons": {
"activated": "",
"deactivated": ""
}
},
"tray": {
// "icon-size": 21,
"spacing": 10
},
"clock": {
// "timezone": "America/New_York",
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>",
"format-alt": "{:%Y-%m-%d}"
},
"cpu": {
"format": "{usage}% ",
"tooltip": false
},
"memory": {
"format": "{}% "
},
"temperature": {
// "thermal-zone": 2,
// "hwmon-path": "/sys/class/hwmon/hwmon2/temp1_input",
"critical-threshold": 80,
// "format-critical": "{temperatureC}°C {icon}",
"format": "{temperatureC}°C {icon}",
"format-icons": ["", "", ""]
},
"backlight": {
// "device": "acpi_video1",
"format": "{percent}% {icon}",
"format-icons": ["", "", "", "", "", "", "", "", ""]
},
"battery": {
"states": {
// "good": 95,
"warning": 30,
"critical": 15
},
"format": "{capacity}% {icon}",
"format-charging": "{capacity}% ",
"format-plugged": "{capacity}% ",
"format-alt": "{time} {icon}",
// "format-good": "", // An empty format will hide the module
// "format-full": "",
"format-icons": ["", "", "", "", ""]
},
"battery#bat2": {
"bat": "BAT2"
},
"network": {
// "interface": "wlp2*", // (Optional) To force the use of this interface
"format-wifi": "{essid} ({signalStrength}%) ",
"format-ethernet": "{ipaddr}/{cidr} ",
"tooltip-format": "{ifname} via {gwaddr} ",
"format-linked": "{ifname} (No IP) ",
"format-disconnected": "Disconnected ⚠",
"format-alt": "{ifname}: {ipaddr}/{cidr}"
},
"pulseaudio": {
// "scroll-step": 1, // %, can be a float
"format": "{volume}% {icon} {format_source}",
"format-bluetooth": "{volume}% {icon} {format_source}",
"format-bluetooth-muted": " {icon} {format_source}",
"format-muted": " {format_source}",
"format-source": "{volume}% ",
"format-source-muted": "",
"format-icons": {
"headphone": "",
"hands-free": "",
"headset": "",
"phone": "",
"portable": "",
"car": "",
"default": ["", "", ""]
},
"on-click": "pavucontrol"
},
"custom/media": {
"format": "{icon} {}",
"return-type": "json",
"max-length": 40,
"format-icons": {
"spotify": "",
"default": "🎜"
},
"escape": true,
"exec": "$HOME/.config/waybar/mediaplayer.py 2> /dev/null" // Script in resources folder
// "exec": "$HOME/.config/waybar/mediaplayer.py --player spotify 2> /dev/null" // Filter player based on name
}
}

View File

@ -22,6 +22,25 @@ window#waybar {
}
*/
#tags button.focused {
background: transparent;
/*color: #c9545d;*/
/*border-bottom: 2px solid #c9545d;*/
color: #3EF6F6;
border-bottom: 2px solid #3EF6F6;
}
#tags button.occupied {
background: transparent;
/*color: #c9545d;*/
/*border-bottom: 2px solid #c9545d;*/
color: #009A0B;
/*border-bottom: 2px solid #009A0B;*/
}
#workspaces button {
padding: 0 2px;
background: transparent;

@ -1 +1 @@
Subproject commit 310149b410da8a02bf594e2b275129194045d22c
Subproject commit 470e26ab99c09bfd15f80c25ccde3cd76507a6eb

View File

@ -93,6 +93,7 @@ export HSA_OVERRIDE_GFX_VERSION=10.3.0
#mount /media/bismarck &
if [ "$(tty)" = /dev/tty1 ]; then
#exec dbus-launch river
exec dbus-launch sway
#exec dbus-launch Hyprland
fi