Compare commits
26 Commits
e6033c5f3c
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 075406dfd5 | |||
| 4d4816c775 | |||
| 037a9bf75c | |||
| 76b6aa95c6 | |||
| 031a79f163 | |||
| de54e28460 | |||
| 556724c5b4 | |||
| 3337df5150 | |||
| fa4b94ee34 | |||
| 0bef633b6b | |||
| cb6624f417 | |||
| 9f7779d659 | |||
| 41a983fb9f | |||
| 1be6624a5d | |||
| bb9df4eb14 | |||
| 7138a0da41 | |||
| ac02b92b12 | |||
| 26c21e0eb5 | |||
| 100fb11e94 | |||
| 5b1e1f92ba | |||
| c9399ce79c | |||
| 1e3b32e415 | |||
| 1db83dfde5 | |||
| 5690771db8 | |||
| 84367ee7ae | |||
| 6cb2f36f65 |
@@ -0,0 +1,21 @@
|
|||||||
|
#
|
||||||
|
# Configuration file for GRUB.
|
||||||
|
#
|
||||||
|
GRUB_DEFAULT=0
|
||||||
|
#GRUB_HIDDEN_TIMEOUT=0
|
||||||
|
#GRUB_HIDDEN_TIMEOUT_QUIET=false
|
||||||
|
GRUB_TIMEOUT=5
|
||||||
|
GRUB_DISTRIBUTOR="Void"
|
||||||
|
GRUB_CMDLINE_LINUX_DEFAULT="quiet loglevel=0 apparmor=1 security=apparmor slab_nomerge init_on_alloc=1 init_on_free=1 page_alloc.shuffle=1 pti=on randomize_kstack_offset=on vsyscall=on debugfs=off ipv6.disable=1 random.trust_cpu=off"
|
||||||
|
# Uncomment to use basic console
|
||||||
|
#GRUB_TERMINAL_INPUT="console"
|
||||||
|
# Uncomment to disable graphical terminal
|
||||||
|
#GRUB_TERMINAL_OUTPUT=console
|
||||||
|
#GRUB_BACKGROUND=/usr/share/void-artwork/splash.png
|
||||||
|
#GRUB_GFXMODE=1920x1080x32
|
||||||
|
#GRUB_DISABLE_LINUX_UUID=true
|
||||||
|
#GRUB_DISABLE_RECOVERY=true
|
||||||
|
# Uncomment and set to the desired menu colors. Used by normal and wallpaper
|
||||||
|
# modes only. Entries specified as foreground/background.
|
||||||
|
#GRUB_COLOR_NORMAL="light-blue/black"
|
||||||
|
#GRUB_COLOR_HIGHLIGHT="light-cyan/blue"
|
||||||
Executable
+7
@@ -0,0 +1,7 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
if [ -e /etc/default/grub ]; then
|
||||||
|
sudo rm /etc/default/grub
|
||||||
|
fi
|
||||||
|
|
||||||
|
install_dotfiles "/" "$DOTFILES_DIR" "grub"
|
||||||
Executable
+7
@@ -0,0 +1,7 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
if [ -e /etc/iwd/main.conf ]; then
|
||||||
|
sudo rm /etc/iwd/main.conf
|
||||||
|
fi
|
||||||
|
|
||||||
|
install_dotfiles "/" "$DOTFILES_DIR" "iwd"
|
||||||
Executable
+7
@@ -0,0 +1,7 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
if [ -e /var/lib/dbus/machine-id ]; then
|
||||||
|
sudo rm /var/lib/dbus/machine-id
|
||||||
|
fi
|
||||||
|
|
||||||
|
install_dotfiles "/" "$DOTFILES_DIR" "machine-id"
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
install_dotfiles "$HOME" "$DOTFILES_DIR" "river"
|
|
||||||
Executable
+3
@@ -0,0 +1,3 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
install_dotfiles "$HOME" "$DOTFILES_DIR" "tmux"
|
||||||
+4
-1
@@ -6,11 +6,14 @@ INSTALLING DOTFILES:
|
|||||||
|
|
||||||
. "$DOTFILES_DIR/install-emptty.sh"
|
. "$DOTFILES_DIR/install-emptty.sh"
|
||||||
. "$DOTFILES_DIR/install-fuzzel.sh"
|
. "$DOTFILES_DIR/install-fuzzel.sh"
|
||||||
|
. "$DOTFILES_DIR/install-grub.sh"
|
||||||
. "$DOTFILES_DIR/install-ghostty.sh"
|
. "$DOTFILES_DIR/install-ghostty.sh"
|
||||||
. "$DOTFILES_DIR/install-helix.sh"
|
. "$DOTFILES_DIR/install-helix.sh"
|
||||||
|
. "$DOTFILES_DIR/install-iwd.sh"
|
||||||
|
. "$DOTFILES_DIR/install-machine-id.sh"
|
||||||
. "$DOTFILES_DIR/install-mako.sh"
|
. "$DOTFILES_DIR/install-mako.sh"
|
||||||
. "$DOTFILES_DIR/install-mango.sh"
|
. "$DOTFILES_DIR/install-mango.sh"
|
||||||
. "$DOTFILES_DIR/install-river.sh"
|
|
||||||
. "$DOTFILES_DIR/install-scooter.sh"
|
. "$DOTFILES_DIR/install-scooter.sh"
|
||||||
|
. "$DOTFILES_DIR/install-tmux.sh"
|
||||||
. "$DOTFILES_DIR/install-yazi.sh"
|
. "$DOTFILES_DIR/install-yazi.sh"
|
||||||
. "$DOTFILES_DIR/install-zsh.sh"
|
. "$DOTFILES_DIR/install-zsh.sh"
|
||||||
|
|||||||
@@ -0,0 +1,12 @@
|
|||||||
|
[General]
|
||||||
|
EnableNetworkConfiguration=true
|
||||||
|
UseDefaultInterface=true
|
||||||
|
AddressRandomization=network
|
||||||
|
AddressRandomizationRange=full
|
||||||
|
|
||||||
|
[Network]
|
||||||
|
NameResolvingService=resolvconf
|
||||||
|
EnableIPv6=false
|
||||||
|
|
||||||
|
[Scan]
|
||||||
|
DisablePeriodicScan=true
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
b08dfa6083e7567a1921a715000001fb
|
||||||
@@ -9,7 +9,7 @@ padding=10
|
|||||||
border-size=3
|
border-size=3
|
||||||
border-radius=6
|
border-radius=6
|
||||||
border-color=#BBBBFFFF
|
border-color=#BBBBFFFF
|
||||||
background-color=#00003311
|
background-color=#44443311
|
||||||
text-color=#BBBBFFFF
|
text-color=#BBBBFFFF
|
||||||
|
|
||||||
default-timeout=5000
|
default-timeout=5000
|
||||||
|
|||||||
@@ -10,10 +10,27 @@ bind=ALT+SHIFT,r,reload_config
|
|||||||
bind=Alt,space,spawn,fuzzel
|
bind=Alt,space,spawn,fuzzel
|
||||||
bind=Alt,Return,spawn,ghostty
|
bind=Alt,Return,spawn,ghostty
|
||||||
|
|
||||||
|
# screenshot
|
||||||
|
bind=NONE,Print,spawn,$HOME/.config/mango/scripts/screenshot/fullscreen.sh
|
||||||
|
bind=NONE,XF86SelectiveScreenshot,spawn,$HOME/.config/mango/scripts/screenshot/region.sh
|
||||||
|
|
||||||
# exit
|
# exit
|
||||||
bind=SUPER,m,quit
|
bind=SUPER,m,quit
|
||||||
bind=ALT,q,killclient,
|
bind=ALT,q,killclient,
|
||||||
|
|
||||||
|
# volume
|
||||||
|
bind=NONE,XF86AudioRaiseVolume,spawn,wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+
|
||||||
|
bind=NONE,XF86AudioLowerVolume,spawn,wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
|
||||||
|
bind=NONE,XF86AudioMute,spawn,wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
|
||||||
|
|
||||||
|
bind=SUPER,a,spawn,$HOME/.config/mango/scripts/tui/wiremix.sh
|
||||||
|
bind=SUPER,w,spawn,$HOME/.config/mango/scripts/tui/impala.sh
|
||||||
|
bind=SUPER,b,spawn,$HOME/.config/mango/scripts/tui/btop.sh
|
||||||
|
|
||||||
|
# brightness
|
||||||
|
bind=NONE,XF86MonBrightnessUp,spawn,light -A 5
|
||||||
|
bind=NONE,XF86MonBrightnessDown,spawn,light -U 5
|
||||||
|
|
||||||
# switch window focus
|
# switch window focus
|
||||||
bind=SUPER,Tab,focusstack,next
|
bind=SUPER,Tab,focusstack,next
|
||||||
bind=ALT,Left,focusdir,left
|
bind=ALT,Left,focusdir,left
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
# https://mangowm.github.io/docs/
|
# https://mangowm.github.io/docs/
|
||||||
|
|
||||||
exec-once=~/.config/mango/exec-once.sh
|
exec-once=~/.config/mango/scripts/exec-once.sh
|
||||||
exec=~/.config/mango/exec.sh
|
exec=~/.config/mango/scripts/exec.sh
|
||||||
|
|
||||||
source=./input/keyboard.conf
|
source=./input/keyboard.conf
|
||||||
source=./input/mouse.conf
|
source=./input/mouse.conf
|
||||||
|
|||||||
@@ -1,6 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
pkill -9 pipewire
|
|
||||||
pipewire &
|
|
||||||
|
|
||||||
awww-daemon &
|
|
||||||
@@ -58,7 +58,7 @@ left_handed=0
|
|||||||
middle_button_emulation=0
|
middle_button_emulation=0
|
||||||
|
|
||||||
# Minimum swipe threshold when use gesture.
|
# Minimum swipe threshold when use gesture.
|
||||||
min_swipe_threshold=1
|
swipe_min_threshold=1
|
||||||
|
|
||||||
# 0 — 1/2/3 finger tap maps to left / right / middle.
|
# 0 — 1/2/3 finger tap maps to left / right / middle.
|
||||||
# 1 — 1/2/3 finger tap maps to left / middle / right.
|
# 1 — 1/2/3 finger tap maps to left / middle / right.
|
||||||
|
|||||||
@@ -6,10 +6,10 @@ blur=1
|
|||||||
# Enable blur for layer surfaces (like bars/docks).
|
# Enable blur for layer surfaces (like bars/docks).
|
||||||
blur_layer=1
|
blur_layer=1
|
||||||
|
|
||||||
i# Caches the wallpaper and blur background, significantly reducing GPU usage.
|
# Caches the wallpaper and blur background, significantly reducing GPU usage.
|
||||||
# Disabling it will significantly increase GPU consumption and may cause rendering lag.
|
# Disabling it will significantly increase GPU consumption and may cause rendering lag.
|
||||||
# Highly recommended.
|
# Highly recommended.
|
||||||
blur_optimized=1
|
blur_optimized=0
|
||||||
|
|
||||||
# The strength (radius) of the blur.
|
# The strength (radius) of the blur.
|
||||||
blur_params_radius=10
|
blur_params_radius=10
|
||||||
@@ -17,7 +17,7 @@ blur_params_radius=10
|
|||||||
# Number of passes. Higher = smoother but more expensive.
|
# Number of passes. Higher = smoother but more expensive.
|
||||||
blur_params_num_passes=3
|
blur_params_num_passes=3
|
||||||
|
|
||||||
Blur noise level.
|
# Blur noise level.
|
||||||
blur_params_noise=0.02
|
blur_params_noise=0.02
|
||||||
|
|
||||||
# Blur brightness adjustment.
|
# Blur brightness adjustment.
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
# https://mangowm.github.io/docs/visuals/theming#colors
|
# https://mangowm.github.io/docs/visuals/theming#colors
|
||||||
|
|
||||||
# Background color of the root window
|
# Background color of the root window
|
||||||
rootcolor=0x201B14FF
|
# rootcolor=0x201B14FF
|
||||||
|
rootcolor=0x000024FF
|
||||||
|
|
||||||
# Inactive window border
|
# Inactive window border
|
||||||
bordercolor=0x5555CCFF
|
bordercolor=0x5555CCFF
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
# https://mangowm.github.io/docs/window-management/rules#layer-rules
|
# https://mangowm.github.io/docs/window-management/rules#layer-rules
|
||||||
|
|
||||||
layerrule=animation_type_open:zoom,layer_name:rofi
|
# No blur or animation for slurp selection layer (avoids occlusion and ghosting in screenshots)
|
||||||
layerrule=animation_type_close:zoom,layer_name:rofi
|
layerrule=noanim:1,noblur:1,layer_name:selection
|
||||||
|
|||||||
@@ -1 +1,7 @@
|
|||||||
# https://mangowm.github.io/docs/window-management/rules#window-rules
|
# https://mangowm.github.io/docs/window-management/rules#window-rules
|
||||||
|
|
||||||
|
windowrule=noblur:1,appid:slurp
|
||||||
|
windowrule=isfloating:1,appid:satty
|
||||||
|
windowrule=isfloating:1,animation_type_open:fade,animation_type_close:fade,appid:ghostty,title:d.wiremix
|
||||||
|
windowrule=isfloating:1,animation_type_open:fade,animation_type_close:fade,appid:ghostty,title:d.impala
|
||||||
|
windowrule=isfloating:1,animation_type_open:fade,animation_type_close:fade,appid:ghostty,title:d.btop
|
||||||
|
|||||||
+16
@@ -0,0 +1,16 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
pkill -9 pipewire
|
||||||
|
pipewire &
|
||||||
|
|
||||||
|
sleep 0.25
|
||||||
|
|
||||||
|
pkill -9 wireplumber
|
||||||
|
wireplumber &
|
||||||
|
|
||||||
|
awww-daemon --no-cache &
|
||||||
|
|
||||||
|
if [ -f ~/.desolate/wallpaper/image.jpg ]; then
|
||||||
|
sleep 0.25
|
||||||
|
awww img ~/.desolate/wallpaper/image.jpg
|
||||||
|
fi
|
||||||
@@ -0,0 +1,19 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
set -eu pipefail
|
||||||
|
|
||||||
|
TARGET_DIR="$HOME/screenshots"
|
||||||
|
TARGET_FILE="$(date +%Y-%m-%d-%H%M%S-%2N).png"
|
||||||
|
TARGET_PATH="$TARGET_DIR/$TARGET_FILE"
|
||||||
|
|
||||||
|
ensure_target_dir()
|
||||||
|
{
|
||||||
|
if [ ! -d "$TARGET_DIR" ]; then
|
||||||
|
mkdir -p "$TARGET_DIR"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
is_slurping()
|
||||||
|
{
|
||||||
|
pgrep -x slurp >/dev/null
|
||||||
|
}
|
||||||
|
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
set -eu pipefail
|
||||||
|
|
||||||
|
. ~/.config/mango/scripts/screenshot/common.sh
|
||||||
|
|
||||||
|
ensure_target_dir
|
||||||
|
grim - | satty --filename - \
|
||||||
|
--output-filename "$TARGET_PATH" \
|
||||||
|
--actions-on-enter "save-to-file","save-to-clipboard","exit" \
|
||||||
|
--actions-on-escape "save-to-clipboard","exit" \
|
||||||
|
--copy-command "wl-copy --type image/png" \
|
||||||
@@ -0,0 +1,17 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
set -eu pipefail
|
||||||
|
|
||||||
|
. ~/.config/mango/scripts/screenshot/common.sh
|
||||||
|
|
||||||
|
if is_slurping; then
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
ensure_target_dir
|
||||||
|
geometry=$(slurp -d); [ -z "$geometry" ] && exit 1
|
||||||
|
|
||||||
|
grim -g "$geometry" - | satty --filename - \
|
||||||
|
--output-filename "$TARGET_PATH" \
|
||||||
|
--actions-on-enter "save-to-file","save-to-clipboard","exit" \
|
||||||
|
--actions-on-escape "save-to-clipboard","exit" \
|
||||||
|
--copy-command "wl-copy --type image/png" \
|
||||||
+4
@@ -0,0 +1,4 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
set -eu pipefail
|
||||||
|
|
||||||
|
$HOME/.config/mango/scripts/tui/run.sh "btop"
|
||||||
+4
@@ -0,0 +1,4 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
set -eu pipefail
|
||||||
|
|
||||||
|
$HOME/.config/mango/scripts/tui/run.sh "impala"
|
||||||
+7
@@ -0,0 +1,7 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
tui=$1
|
||||||
|
|
||||||
|
if ! pgrep -x "$tui" >/dev/null; then
|
||||||
|
ghostty --title="d.$tui" -e "$tui"
|
||||||
|
fi
|
||||||
+4
@@ -0,0 +1,4 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
set -eu pipefail
|
||||||
|
|
||||||
|
$HOME/.config/mango/scripts/tui/run.sh "wiremix"
|
||||||
@@ -1,17 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
FIFO="$XDG_RUNTIME_DIR/sandbar"
|
|
||||||
[ -e "$FIFO" ] && rm -f "$FIFO"
|
|
||||||
mkfifo "$FIFO"
|
|
||||||
|
|
||||||
while cat "$FIFO"; do :; done | sandbar \
|
|
||||||
-font "Hack Nerd Font:size=15" \
|
|
||||||
-active-fg-color "#000000ff" \
|
|
||||||
-active-bg-color "#ccccccff" \
|
|
||||||
-inactive-fg-color "#888888ff" \
|
|
||||||
-inactive-bg-color "#000000ff" \
|
|
||||||
-urgent-fg-color "#000000" \
|
|
||||||
-urgent-bg-color "#cc241d" \
|
|
||||||
-title-fg-color "#aaaaaa" \
|
|
||||||
-title-bg-color "#000000ff" \
|
|
||||||
-vertical-padding 4
|
|
||||||
@@ -1,24 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
# Tiled Layout
|
|
||||||
|
|
||||||
rivertile -view-padding 4 -outer-padding 0 -main-ratio 0.5 &
|
|
||||||
riverctl default-layout rivertile
|
|
||||||
riverctl default-attach-mode above
|
|
||||||
|
|
||||||
# Move cursor to the center of focused window
|
|
||||||
riverctl set-cursor-warp on-focus-change
|
|
||||||
|
|
||||||
. "$HOME/.config/river/init-keymaps"
|
|
||||||
. "$HOME/.config/river/init-input"
|
|
||||||
|
|
||||||
# Background Color
|
|
||||||
riverctl background-color 0x000000
|
|
||||||
|
|
||||||
pkill -9 pipewire
|
|
||||||
riverctl spawn 'pipewire'
|
|
||||||
|
|
||||||
riverctl spawn 'mako'
|
|
||||||
|
|
||||||
riverctl spawn "$HOME/.config/river/bar"
|
|
||||||
riverctl spawn "$HOME/.config/river/status"
|
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
riverctl set-repeat 50 180
|
|
||||||
riverctl keyboard-layout -options ctrl:nocaps us
|
|
||||||
|
|
||||||
for device in $(riverctl list-inputs | grep -i touchpad); do
|
|
||||||
riverctl input "$device" tap-button-map left-right-middle
|
|
||||||
riverctl input "$device" tap enabled
|
|
||||||
riverctl input "$device" scroll-method two-finger
|
|
||||||
riverctl input "$device" natural-scroll enabled
|
|
||||||
riverctl input "$device" drag enabled
|
|
||||||
riverctl input "$device" disable-while-typing disabled
|
|
||||||
done
|
|
||||||
@@ -1,64 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
|
|
||||||
# ---------------------
|
|
||||||
# MOUSE
|
|
||||||
# ---------------------
|
|
||||||
|
|
||||||
riverctl map-pointer normal Super BTN_LEFT move-view
|
|
||||||
riverctl map-pointer normal Super BTN_RIGHT resize-view
|
|
||||||
riverctl map-pointer normal Super BTN_MIDDLE toggle-float
|
|
||||||
|
|
||||||
# ---------------------
|
|
||||||
# KEYBOARD
|
|
||||||
# ---------------------
|
|
||||||
|
|
||||||
mod=Mod1
|
|
||||||
|
|
||||||
riverctl map normal $mod Return spawn 'sh -c "ghostty & sleep 0.2 && riverctl focus-view next"'
|
|
||||||
riverctl map normal $mod Space spawn 'fuzzel'
|
|
||||||
riverctl map normal $mod q close
|
|
||||||
riverctl map normal $mod m spawn 'riverctl exit'
|
|
||||||
riverctl map normal $mod+Shift l spawn 'waylock -init-color 0x000000 -input-color 0x111111 -fail-color 0x220000'
|
|
||||||
riverctl map normal $mod f toggle-float
|
|
||||||
|
|
||||||
# Screenshots
|
|
||||||
riverctl map normal None Print spawn '
|
|
||||||
FILE_NAME=$(date +"%Y-%m-%d-%H-%M-%S") &&
|
|
||||||
FILE="$HOME/$FILE_NAME.png" &&
|
|
||||||
grim - | wl-copy --type image/png &&
|
|
||||||
wl-paste --type image/png > "$FILE" &&
|
|
||||||
notify-send --icon="$FILE" "$FILE_NAME" "Full screen shot saved and copied"
|
|
||||||
'
|
|
||||||
riverctl map normal None XF86SelectiveScreenshot spawn '
|
|
||||||
FILE_NAME=$(date +"%Y-%m-%d-%H-%M-%S") &&
|
|
||||||
FILE="$HOME/$FILE_NAME.png" &&
|
|
||||||
grim -g "$(slurp)" - | wl-copy --type image/png &&
|
|
||||||
wl-paste --type image/png > "$FILE" &&
|
|
||||||
notify-send --icon="$FILE" "$FILE_NAME" "Screen region shot saved and copied"
|
|
||||||
'
|
|
||||||
|
|
||||||
# Volume
|
|
||||||
riverctl map normal None XF86AudioRaiseVolume spawn 'wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+'
|
|
||||||
riverctl map normal None XF86AudioLowerVolume spawn 'wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-'
|
|
||||||
riverctl map normal None XF86AudioMute spawn 'wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle'
|
|
||||||
|
|
||||||
# Brightness
|
|
||||||
riverctl map normal None XF86MonBrightnessUp spawn 'light -A 5'
|
|
||||||
riverctl map normal None XF86MonBrightnessDown spawn 'light -U 5'
|
|
||||||
|
|
||||||
# Navigation
|
|
||||||
riverctl map normal $mod h focus-view left
|
|
||||||
riverctl map normal $mod j focus-view down
|
|
||||||
riverctl map normal $mod k focus-view up
|
|
||||||
riverctl map normal $mod l focus-view right
|
|
||||||
|
|
||||||
riverctl map normal $mod Tab focus-view previous
|
|
||||||
riverctl map normal $mod+Shift Tab focus-view next
|
|
||||||
|
|
||||||
# Tags Navigation
|
|
||||||
for i in $(seq 1 9); do
|
|
||||||
tag=$((1 << ($i - 1)))
|
|
||||||
riverctl map normal $mod $i set-focused-tags $tag
|
|
||||||
riverctl map normal $mod+Shift $i spawn "riverctl set-view-tags $tag && riverctl set-focused-tags $tag"
|
|
||||||
done
|
|
||||||
@@ -1,88 +0,0 @@
|
|||||||
#!/bin/env sh
|
|
||||||
|
|
||||||
MEM_FG_C="#CD95D7"
|
|
||||||
CPU_FG_C="#9EA7D9"
|
|
||||||
BAT_FG_C="#AED481"
|
|
||||||
VOL_FG_C="#EEEEEE"
|
|
||||||
BRG_FG_C="#FFCA28"
|
|
||||||
DAT_FG_C="#FE8964"
|
|
||||||
TIM_FG_C="#FE8964"
|
|
||||||
|
|
||||||
#
|
|
||||||
|
|
||||||
cpu()
|
|
||||||
{
|
|
||||||
cpu=$(top -bn1 | awk '/Cpu\(s\):/ {print $2 + $4 "%"}')
|
|
||||||
}
|
|
||||||
|
|
||||||
memory()
|
|
||||||
{
|
|
||||||
memory=$(free -m | awk '/^Mem:/ {printf "%.1f", $3/2024}')
|
|
||||||
}
|
|
||||||
|
|
||||||
disk() {
|
|
||||||
disk="$(df -h | awk 'NR==2{print $4}')"
|
|
||||||
}
|
|
||||||
|
|
||||||
cdate()
|
|
||||||
{
|
|
||||||
cdate="$(date "+%a %d %b")"
|
|
||||||
}
|
|
||||||
|
|
||||||
ctime()
|
|
||||||
{
|
|
||||||
ctime="$(date "+%I:%M:%S %p")"
|
|
||||||
}
|
|
||||||
|
|
||||||
battery()
|
|
||||||
{
|
|
||||||
# read -r bat_status </sys/class/power_supply/BAT0/status
|
|
||||||
read -r bat_capacity </sys/class/power_supply/BAT0/capacity
|
|
||||||
battery="$bat_capacity"
|
|
||||||
}
|
|
||||||
|
|
||||||
vol()
|
|
||||||
{
|
|
||||||
vol=$(wpctl get-volume @DEFAULT_AUDIO_SINK@ | awk '{printf "%.0f\n", $2*100}')
|
|
||||||
}
|
|
||||||
|
|
||||||
brightness()
|
|
||||||
{
|
|
||||||
brightness=$(light -G | awk '{print int($1)}')
|
|
||||||
}
|
|
||||||
|
|
||||||
display()
|
|
||||||
{
|
|
||||||
memory_str="^fg($MEM_FG_C) $memory^fg()"
|
|
||||||
cpu_str="^fg($CPU_FG_C) $cpu^fg()"
|
|
||||||
battery_str="^fg($BAT_FG_C)$battery^fg()"
|
|
||||||
volume_str="^fg($VOL_FG_C) $vol^fg()"
|
|
||||||
brightness_str="^fg($BRG_FG_C) $brightness^fg()"
|
|
||||||
date_str="^fg($DAT_FG_C) $cdate^fg()"
|
|
||||||
time_str="^fg($TIM_FG_C) $ctime^fg()"
|
|
||||||
|
|
||||||
echo "all status $memory_str $cpu_str $battery_str $volume_str $brightness_str $date_str $time_str" >"$FIFO"
|
|
||||||
}
|
|
||||||
|
|
||||||
printf "%s" "$$" > "$XDG_RUNTIME_DIR/status_pid"
|
|
||||||
FIFO="$XDG_RUNTIME_DIR/sandbar"
|
|
||||||
[ -e "$FIFO" ] || mkfifo "$FIFO"
|
|
||||||
sec=0
|
|
||||||
|
|
||||||
while true; do
|
|
||||||
sleep 1 &
|
|
||||||
wait && {
|
|
||||||
[ $((sec % 1)) -eq 0 ] && memory
|
|
||||||
[ $((sec % 1)) -eq 0 ] && cpu
|
|
||||||
# [ $((sec % 1)) -eq 0 ] && disk
|
|
||||||
[ $((sec % 60)) -eq 0 ] && battery
|
|
||||||
[ $((sec % 1)) -eq 0 ] && vol
|
|
||||||
[ $((sec % 1)) -eq 0 ] && brightness
|
|
||||||
[ $((sec % 1)) -eq 0 ] && cdate
|
|
||||||
[ $((sec % 1)) -eq 0 ] && ctime
|
|
||||||
|
|
||||||
[ $((sec % 1)) -eq 0 ] && display
|
|
||||||
|
|
||||||
sec=$((sec + 1))
|
|
||||||
}
|
|
||||||
done
|
|
||||||
Executable
+7
@@ -0,0 +1,7 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
set -eu pipefail
|
||||||
|
|
||||||
|
read -r bat_capacity </sys/class/power_supply/BAT0/capacity
|
||||||
|
battery="$bat_capacity"
|
||||||
|
|
||||||
|
echo "$battery"
|
||||||
Executable
+6
@@ -0,0 +1,6 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
set -eu pipefail
|
||||||
|
|
||||||
|
brightness=$(light -G | awk '{print int($1)}')
|
||||||
|
|
||||||
|
echo "$brightness"
|
||||||
Executable
+5
@@ -0,0 +1,5 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
set -eu pipefail
|
||||||
|
|
||||||
|
cpu=$(top -bn1 | awk '/Cpu\(s\):/ {print $2 + $4}' | tr -d '\n')
|
||||||
|
echo "$cpu"
|
||||||
Executable
+6
@@ -0,0 +1,6 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
set -eu pipefail
|
||||||
|
|
||||||
|
date="$(date "+%a %d %b")"
|
||||||
|
|
||||||
|
echo "$date"
|
||||||
Executable
+6
@@ -0,0 +1,6 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
set -eu pipefail
|
||||||
|
|
||||||
|
memory=$(free -m | awk '/^Mem:/ {printf "%.1f", $3/1024}')
|
||||||
|
|
||||||
|
echo "$memory"
|
||||||
Executable
+6
@@ -0,0 +1,6 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
set -eu pipefail
|
||||||
|
|
||||||
|
time="$(date "+%I:%M %p")"
|
||||||
|
|
||||||
|
echo "$time"
|
||||||
@@ -0,0 +1,123 @@
|
|||||||
|
# Enable 256-color and true-color (24-bit) support in tmux
|
||||||
|
set -g default-terminal "screen-256color" # Set terminal type for 256-color support
|
||||||
|
set -ga terminal-overrides ",*256col*:Tc" # Override to enable true-color for compatible terminals
|
||||||
|
|
||||||
|
unbind r
|
||||||
|
bind r source-file ~/.config/tmux/tmux.conf
|
||||||
|
|
||||||
|
bind-key h select-pane -L
|
||||||
|
bind-key j select-pane -D
|
||||||
|
bind-key k select-pane -U
|
||||||
|
bind-key l select-pane -R
|
||||||
|
|
||||||
|
set-option -g status-position top
|
||||||
|
|
||||||
|
set -g mouse on
|
||||||
|
set -g set-clipboard on
|
||||||
|
set -g status-interval 1
|
||||||
|
set -g detach-on-destroy off
|
||||||
|
|
||||||
|
# Enable vi mode to allow vim movements
|
||||||
|
set-window-option -g mode-keys vi
|
||||||
|
# Start selecting text with "v"
|
||||||
|
bind-key -T copy-mode-vi 'v' send -X begin-selection
|
||||||
|
# Copy text with "y"
|
||||||
|
bind -T copy-mode-vi 'y' send-keys -X copy-pipe-and-cancel "pbcopy"
|
||||||
|
# Do not exit copy mode when dragging with mouse
|
||||||
|
unbind -T copy-mode-vi MouseDragEnd1Pane
|
||||||
|
|
||||||
|
# Start windows and panes at 1 instead of 0
|
||||||
|
set -g base-index 1
|
||||||
|
set -g pane-base-index 1
|
||||||
|
set -g renumber-windows on # automatically renumber windows when one is closed
|
||||||
|
|
||||||
|
|
||||||
|
# DATA
|
||||||
|
|
||||||
|
cpu="#(~/.config/tmux/cpu.sh)"
|
||||||
|
mem="#(~/.config/tmux/mem.sh)"
|
||||||
|
bat="#(~/.config/tmux/bat.sh)"
|
||||||
|
volume="#(~/.config/tmux/volume.sh)"
|
||||||
|
bright="#(~/.config/tmux/brightness.sh)"
|
||||||
|
date="#(~/.config/tmux/date.sh)"
|
||||||
|
time="#(~/.config/tmux/time.sh)"
|
||||||
|
|
||||||
|
# STYLE
|
||||||
|
|
||||||
|
c_status_bg="default"
|
||||||
|
c_status_fg="#CCCCCC"
|
||||||
|
|
||||||
|
c_status_left_bg=$c_status_bg
|
||||||
|
c_status_left_fill="#A3BE8C"
|
||||||
|
c_status_left_fg="#000000"
|
||||||
|
c_session_bg=$c_status_left_bg
|
||||||
|
c_session_fill=$c_status_left_fill
|
||||||
|
c_session_fg=$c_status_left_fg
|
||||||
|
|
||||||
|
c_status_middle_bg=$c_status_bg
|
||||||
|
c_window_current_bg=$c_status_middle_bg
|
||||||
|
c_window_current_fill="#88C0D0"
|
||||||
|
c_window_current_fg="#000000"
|
||||||
|
c_window_bg=$c_status_middle_bg
|
||||||
|
c_window_fill="#224444"
|
||||||
|
c_window_fg="#88C0D0"
|
||||||
|
|
||||||
|
c_status_right_bg=$c_status_bg
|
||||||
|
c_status_right_fill="#CD96CD"
|
||||||
|
c_status_right_fg="#242424"
|
||||||
|
c_cpu_bg=$c_status_right_fill
|
||||||
|
c_cpu_fg=$c_status_right_fg
|
||||||
|
c_mem_bg=$c_status_right_fill
|
||||||
|
c_mem_fg=$c_status_right_fg
|
||||||
|
c_batt_bg=$c_status_right_fill
|
||||||
|
c_batt_fg=$c_status_right_fg
|
||||||
|
c_volume_bg=$c_status_right_fill
|
||||||
|
c_volume_fg=$c_status_right_fg
|
||||||
|
c_bright_bg=$c_status_right_fill
|
||||||
|
c_bright_fg=$c_status_right_fg
|
||||||
|
c_date_bg="#ABABAB"
|
||||||
|
c_date_fg=$c_status_right_fg
|
||||||
|
c_time_bg="#ABABAB"
|
||||||
|
c_time_fg=$c_status_right_fg
|
||||||
|
|
||||||
|
c_message_bg="#EEB422"
|
||||||
|
c_message_fg="#111111"
|
||||||
|
|
||||||
|
c_mode_bg="#CD96CD"
|
||||||
|
c_mode_fg="#101010"
|
||||||
|
|
||||||
|
c_pane_border="#5D478B"
|
||||||
|
c_pane_active_border="#B452CD"
|
||||||
|
|
||||||
|
|
||||||
|
session_pill="#[fg=${c_session_fg},bg=${c_session_fill}] #S #[fg=${c_session_fill},bg=${c_session_bg}]"
|
||||||
|
|
||||||
|
window_current_pill="#[fg=${c_window_current_fill}]#[fg=${c_window_current_fg},bg=${c_window_current_fill}] #I #W #[fg=${c_window_current_fill},bg=${c_window_current_bg}]"
|
||||||
|
window_pill="#[fg=${c_window_fill}]#[fg=${c_window_fg},bg=${c_window_fill}] #I #W #[fg=${c_window_fill},bg=${c_window_bg}]"
|
||||||
|
|
||||||
|
cpu_pill="#[fg=${c_cpu_bg}]#[fg=${c_cpu_fg},bg=${c_cpu_bg}] ${cpu}%#[fg=${c_cpu_bg},bg=${c_status_right_bg}]"
|
||||||
|
mem_pill="#[fg=${c_mem_bg}]#[fg=${c_mem_fg},bg=${c_mem_bg}] ${mem}G#[fg=${c_mem_bg},bg=${c_status_right_bg}]"
|
||||||
|
batt_pill="#[fg=${c_batt_bg}]#[fg=${c_batt_fg},bg=${c_batt_bg}] ${bat}%#[fg=${c_batt_bg},bg=${c_status_right_bg}]"
|
||||||
|
volume_pill="#[fg=${c_volume_bg}]#[fg=${c_volume_fg},bg=${c_volume_bg}] ${volume}%#[fg=${c_volume_bg},bg=${c_status_right_bg}]"
|
||||||
|
bright_pill="#[fg=${c_bright_bg}]#[fg=${c_bright_fg},bg=${c_bright_bg}] ${bright}%#[fg=${c_bright_bg},bg=${c_status_right_bg}]"
|
||||||
|
date_pill="#[fg=${c_date_bg}]#[fg=${c_date_fg},bg=${c_date_bg}] ${date}#[fg=${c_date_bg},bg=${c_status_right_bg}]"
|
||||||
|
time_pill="#[fg=${c_time_bg}]#[fg=${c_time_fg},bg=${c_time_bg}] ${time}#[fg=${c_time_bg},bg=${c_status_right_bg}]"
|
||||||
|
|
||||||
|
set -g status-justify centre
|
||||||
|
set -g status-left-length 200
|
||||||
|
set -g status-right-length 200
|
||||||
|
set -g status-style "fg=${c_status_fg},bg=${c_status_bg}"
|
||||||
|
set -g status-left ${session_pill}
|
||||||
|
set -g status-right "${cpu_pill} ${mem_pill} ${batt_pill} ${volume_pill} ${bright_pill} ${date_pill} ${time_pill}"
|
||||||
|
set -g window-status-current-format $window_current_pill
|
||||||
|
set -g window-status-format $window_pill
|
||||||
|
set -g message-style "fg=${c_message_fg},bg=${c_message_bg}"
|
||||||
|
set -g mode-style "fg=${c_mode_fg},bg=${c_mode_bg}"
|
||||||
|
set -g pane-border-style "fg=${c_pane_border}"
|
||||||
|
set -g pane-active-border-style "fg=${c_pane_active_border}"
|
||||||
|
|
||||||
|
|
||||||
|
# Enable second level status line and make it empty
|
||||||
|
set -g status 2
|
||||||
|
set -g status-format[1] ''
|
||||||
|
|
||||||
Executable
+6
@@ -0,0 +1,6 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
set -eu pipefail
|
||||||
|
|
||||||
|
volume=$(wpctl get-volume @DEFAULT_AUDIO_SINK@ | awk '{printf "%.0f\n", $2*100}')
|
||||||
|
|
||||||
|
echo "$volume"
|
||||||
@@ -6,11 +6,11 @@ gum style --foreground 4 "
|
|||||||
ASSIGNING GROUPS:
|
ASSIGNING GROUPS:
|
||||||
"
|
"
|
||||||
|
|
||||||
for file in "$GROUPS_DIR"/*; do
|
for file in "$GROUPS_DIR"/*.group; do
|
||||||
|
|
||||||
[ ! -f "$file" ] && continue
|
[ ! -f "$file" ] && continue
|
||||||
|
|
||||||
group="$(basename "$file")"
|
group="$(basename "${file%.group}")"
|
||||||
|
|
||||||
if sudo usermod -aG $group $USER; then
|
if sudo usermod -aG $group $USER; then
|
||||||
gum style --foreground 10 "✓ $group"
|
gum style --foreground 10 "✓ $group"
|
||||||
-30
@@ -25,15 +25,7 @@ install_service()
|
|||||||
|
|
||||||
local service="$1"
|
local service="$1"
|
||||||
|
|
||||||
if [ -e "/var/service/$service" ]; then
|
|
||||||
sudo rm -rf "/var/service/$service"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if sudo ln -s "/etc/sv/$service" "/var/service/"; then
|
if sudo ln -s "/etc/sv/$service" "/var/service/"; then
|
||||||
if [ ! -f "/etc/sv/$service/down" ]; then
|
|
||||||
sudo touch "/etc/sv/$service/down"
|
|
||||||
fi
|
|
||||||
|
|
||||||
gum style --foreground 10 "✓ $service"
|
gum style --foreground 10 "✓ $service"
|
||||||
else
|
else
|
||||||
gum style --foreground 9 "✗ $service"
|
gum style --foreground 9 "✗ $service"
|
||||||
@@ -56,28 +48,6 @@ remove_service()
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
run_service()
|
|
||||||
{
|
|
||||||
|
|
||||||
if [ "$#" -eq 0 ]; then
|
|
||||||
echo echo "✗ no service provided!"
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
local service="$1"
|
|
||||||
|
|
||||||
if [ -f "/etc/sv/$service/down" ]; then
|
|
||||||
sudo rm "/etc/sv/$service/down"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if sudo sv up "$service"; then
|
|
||||||
gum style --foreground 10 "✓ $service"
|
|
||||||
else
|
|
||||||
gum style --foreground 9 "✗ $service"
|
|
||||||
fi
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
install_dotfiles()
|
install_dotfiles()
|
||||||
{
|
{
|
||||||
if [ $# -ne 3 ]; then
|
if [ $# -ne 3 ]; then
|
||||||
|
|||||||
+2
-8
@@ -9,16 +9,10 @@ GROUPS_DIR="$DESOLATE_DIR/groups"
|
|||||||
. "$HOME/.desolate/helpers.sh"
|
. "$HOME/.desolate/helpers.sh"
|
||||||
|
|
||||||
. "$PACKAGES_DIR/install.sh"
|
. "$PACKAGES_DIR/install.sh"
|
||||||
. "$SERVICES_DIR/install.sh"
|
|
||||||
. "$DOTFILES_DIR/install.sh"
|
. "$DOTFILES_DIR/install.sh"
|
||||||
. "$DESOLATE_DIR/assign-groups.sh"
|
. "$GROUPS_DIR/assign.sh"
|
||||||
. "$SERVICES_DIR/run.sh"
|
. "$SERVICES_DIR/install.sh"
|
||||||
|
|
||||||
gum style --foreground 15 "
|
gum style --foreground 15 "
|
||||||
Done!
|
Done!
|
||||||
"
|
"
|
||||||
|
|
||||||
if [ -f /tmp/reboot ]; then
|
|
||||||
sudo rm /tmp/reboot
|
|
||||||
sudo reboot
|
|
||||||
fi
|
|
||||||
|
|||||||
Executable
+3
@@ -0,0 +1,3 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
install_package "alsa-pipewire"
|
||||||
Executable
+3
@@ -0,0 +1,3 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
install_package "impala"
|
||||||
Executable
+3
@@ -0,0 +1,3 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
install_package "iwd"
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
install_package "nerd-fonts"
|
|
||||||
Executable
+3
@@ -0,0 +1,3 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
install_package "openresolv"
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
if install_package "river"; then
|
|
||||||
if [ ! -d "/run/user/$(id -u)" ]; then
|
|
||||||
sudo mkdir "/run/user/$(id -u)"
|
|
||||||
fi
|
|
||||||
sudo chmod 700 "/run/user/$(id -u)"
|
|
||||||
fi
|
|
||||||
Executable
+3
@@ -0,0 +1,3 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
install_package "rtkit"
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
install_package "sandbar"
|
|
||||||
Executable
+3
@@ -0,0 +1,3 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
install_package "satty"
|
||||||
Executable
+3
@@ -0,0 +1,3 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
install_package "tmux"
|
||||||
Executable
+3
@@ -0,0 +1,3 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
install_package "xorg-server-xwayland"
|
||||||
@@ -12,7 +12,6 @@ if [ $(command -v zsh) >/dev/null 2>&1 ]; then
|
|||||||
gum style --foreground 9 "✗ failed to change shell to zsh: $error"
|
gum style --foreground 9 "✗ failed to change shell to zsh: $error"
|
||||||
else
|
else
|
||||||
gum style --foreground 15 "✓ changed shell to zsh"
|
gum style --foreground 15 "✓ changed shell to zsh"
|
||||||
sudo touch /tmp/reboot
|
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|||||||
+8
-3
@@ -6,6 +6,7 @@ gum style --foreground 4 "
|
|||||||
INSTALLING PACKAGES:
|
INSTALLING PACKAGES:
|
||||||
"
|
"
|
||||||
|
|
||||||
|
. "$PACKAGES_DIR/install-alsa-pipewire.sh"
|
||||||
. "$PACKAGES_DIR/install-apparmor.sh"
|
. "$PACKAGES_DIR/install-apparmor.sh"
|
||||||
. "$PACKAGES_DIR/install-awww.sh"
|
. "$PACKAGES_DIR/install-awww.sh"
|
||||||
. "$PACKAGES_DIR/install-bash-completion.sh"
|
. "$PACKAGES_DIR/install-bash-completion.sh"
|
||||||
@@ -19,27 +20,31 @@ INSTALLING PACKAGES:
|
|||||||
. "$PACKAGES_DIR/install-ghostty.sh"
|
. "$PACKAGES_DIR/install-ghostty.sh"
|
||||||
. "$PACKAGES_DIR/install-grim.sh"
|
. "$PACKAGES_DIR/install-grim.sh"
|
||||||
. "$PACKAGES_DIR/install-helix.sh"
|
. "$PACKAGES_DIR/install-helix.sh"
|
||||||
|
. "$PACKAGES_DIR/install-impala.sh"
|
||||||
|
. "$PACKAGES_DIR/install-iwd.sh"
|
||||||
. "$PACKAGES_DIR/install-less.sh"
|
. "$PACKAGES_DIR/install-less.sh"
|
||||||
. "$PACKAGES_DIR/install-libnotify.sh"
|
. "$PACKAGES_DIR/install-libnotify.sh"
|
||||||
. "$PACKAGES_DIR/install-light.sh"
|
. "$PACKAGES_DIR/install-light.sh"
|
||||||
. "$PACKAGES_DIR/install-mako.sh"
|
. "$PACKAGES_DIR/install-mako.sh"
|
||||||
. "$PACKAGES_DIR/install-mangowc.sh"
|
. "$PACKAGES_DIR/install-mangowc.sh"
|
||||||
. "$PACKAGES_DIR/install-mesa-dri.sh"
|
. "$PACKAGES_DIR/install-mesa-dri.sh"
|
||||||
. "$PACKAGES_DIR/install-nerd-fonts.sh"
|
|
||||||
. "$PACKAGES_DIR/install-noto-fonts.sh"
|
. "$PACKAGES_DIR/install-noto-fonts.sh"
|
||||||
|
. "$PACKAGES_DIR/install-openresolv.sh"
|
||||||
. "$PACKAGES_DIR/install-pipewire.sh"
|
. "$PACKAGES_DIR/install-pipewire.sh"
|
||||||
. "$PACKAGES_DIR/install-ripgrep.sh"
|
. "$PACKAGES_DIR/install-ripgrep.sh"
|
||||||
. "$PACKAGES_DIR/install-river.sh"
|
. "$PACKAGES_DIR/install-rtkit.sh"
|
||||||
. "$PACKAGES_DIR/install-sandbar.sh"
|
. "$PACKAGES_DIR/install-satty.sh"
|
||||||
. "$PACKAGES_DIR/install-seatd.sh"
|
. "$PACKAGES_DIR/install-seatd.sh"
|
||||||
. "$PACKAGES_DIR/install-slurp.sh"
|
. "$PACKAGES_DIR/install-slurp.sh"
|
||||||
. "$PACKAGES_DIR/install-socklog-void.sh"
|
. "$PACKAGES_DIR/install-socklog-void.sh"
|
||||||
. "$PACKAGES_DIR/install-stow.sh"
|
. "$PACKAGES_DIR/install-stow.sh"
|
||||||
|
. "$PACKAGES_DIR/install-tmux.sh"
|
||||||
. "$PACKAGES_DIR/install-tree.sh"
|
. "$PACKAGES_DIR/install-tree.sh"
|
||||||
. "$PACKAGES_DIR/install-udisks2.sh"
|
. "$PACKAGES_DIR/install-udisks2.sh"
|
||||||
. "$PACKAGES_DIR/install-usbutils.sh"
|
. "$PACKAGES_DIR/install-usbutils.sh"
|
||||||
. "$PACKAGES_DIR/install-waylock.sh"
|
. "$PACKAGES_DIR/install-waylock.sh"
|
||||||
. "$PACKAGES_DIR/install-wiremix.sh"
|
. "$PACKAGES_DIR/install-wiremix.sh"
|
||||||
. "$PACKAGES_DIR/install-wl-clipboard.sh"
|
. "$PACKAGES_DIR/install-wl-clipboard.sh"
|
||||||
|
. "$PACKAGES_DIR/install-xorg-server-xwayland.sh"
|
||||||
. "$PACKAGES_DIR/install-yazi.sh"
|
. "$PACKAGES_DIR/install-yazi.sh"
|
||||||
. "$PACKAGES_DIR/install-zsh.sh"
|
. "$PACKAGES_DIR/install-zsh.sh"
|
||||||
|
|||||||
Executable
+6
@@ -0,0 +1,6 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
if [ -e /etc/resolv.conf ]; then
|
||||||
|
sudo rm /etc/resolv.conf
|
||||||
|
fi
|
||||||
|
install_service "iwd"
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
install_service "river"
|
|
||||||
Executable
+3
@@ -0,0 +1,3 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
install_service "rtkit"
|
||||||
Executable
+31
@@ -0,0 +1,31 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
if [ ! -d /etc/pipewire/pipewire.conf.d ]; then
|
||||||
|
sudo mkdir -p /etc/pipewire/pipewire.conf.d
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Session Manager
|
||||||
|
|
||||||
|
if [ -e /etc/pipewire/pipewire.conf.d/10-wireplumber.conf ]; then
|
||||||
|
sudo ln -s /usr/share/examples/wireplumber/10-wireplumber.conf /etc/pipewire/pipewire.conf.d/
|
||||||
|
fi
|
||||||
|
|
||||||
|
# PulseAudio Interface
|
||||||
|
|
||||||
|
if [ -e /etc/pipewire/pipewire.conf.d/20-pipewire-pulse.conf ]; then
|
||||||
|
sudo ln -s /usr/share/examples/pipewire/20-pipewire-pulse.conf /etc/pipewire/pipewire.conf.d/
|
||||||
|
fi
|
||||||
|
|
||||||
|
# ALSA Integration
|
||||||
|
|
||||||
|
if [ ! -d /etc/alsa/conf.d ]; then
|
||||||
|
sudo mkdir -p /etc/alsa/conf.d
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -e /usr/share/alsa/alsa.conf.d/50-pipewire.conf ]; then
|
||||||
|
sudo ln -s /usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d/
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -e /usr/share/alsa/alsa.conf.d/99-pipewire-default.conf ]; then
|
||||||
|
sudo ln -s /usr/share/alsa/alsa.conf.d/99-pipewire-default.conf /etc/alsa/conf.d/
|
||||||
|
fi
|
||||||
+5
-1
@@ -8,7 +8,11 @@ INSTALLING SERVICES:
|
|||||||
|
|
||||||
. "$SERVICES_DIR/install-chronyd.sh"
|
. "$SERVICES_DIR/install-chronyd.sh"
|
||||||
. "$SERVICES_DIR/install-dbus.sh"
|
. "$SERVICES_DIR/install-dbus.sh"
|
||||||
. "$SERVICES_DIR/install-emptty.sh"
|
. "$SERVICES_DIR/install-iwd.sh"
|
||||||
|
. "$SERVICES_DIR/install-rtkit.sh"
|
||||||
. "$SERVICES_DIR/install-seatd.sh"
|
. "$SERVICES_DIR/install-seatd.sh"
|
||||||
. "$SERVICES_DIR/install-socklog-unix.sh"
|
. "$SERVICES_DIR/install-socklog-unix.sh"
|
||||||
. "$SERVICES_DIR/install-nanoklogd.sh"
|
. "$SERVICES_DIR/install-nanoklogd.sh"
|
||||||
|
. "$SERVICES_DIR/install-wireplumber.sh"
|
||||||
|
|
||||||
|
. "$SERVICES_DIR/install-emptty.sh"
|
||||||
|
|||||||
@@ -1,3 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
run_service "chronyd"
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
run_service "dbus"
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
run_service "emptty"
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
run_service "nanoklogd"
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
run_service "seatd"
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
run_service "socklog-unix"
|
|
||||||
@@ -1,16 +0,0 @@
|
|||||||
|
|
||||||
if [ ! -d /etc/pipewire/pipewire.conf.d ]; then
|
|
||||||
sudo mkdir -p /etc/pipewire/pipewire.conf.d
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Session Manager
|
|
||||||
|
|
||||||
if [ ! -e /etc/pipewire/pipewire.conf.d/10-wireplumber.conf ]; then
|
|
||||||
sudo ln -s /usr/share/examples/wireplumber/10-wireplumber.conf /etc/pipewire/pipewire.conf.d/
|
|
||||||
fi
|
|
||||||
|
|
||||||
# PulseAudio Interface
|
|
||||||
|
|
||||||
if [ ! -e /etc/pipewire/pipewire.conf.d/20-pipewire-pulse.conf ]; then
|
|
||||||
sudo ln -s /usr/share/examples/pipewire/20-pipewire-pulse.conf /etc/pipewire/pipewire.conf.d/
|
|
||||||
fi
|
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
sudo true
|
|
||||||
|
|
||||||
gum style --foreground 4 "
|
|
||||||
RUNNING SERVICES:
|
|
||||||
"
|
|
||||||
|
|
||||||
. "$SERVICES_DIR/run-chronyd.sh"
|
|
||||||
. "$SERVICES_DIR/run-dbus.sh"
|
|
||||||
. "$SERVICES_DIR/run-emptty.sh"
|
|
||||||
. "$SERVICES_DIR/run-seatd.sh"
|
|
||||||
. "$SERVICES_DIR/run-wireplumber.sh"
|
|
||||||
. "$SERVICES_DIR/run-socklog-unix.sh"
|
|
||||||
. "$SERVICES_DIR/run-nanoklogd.sh"
|
|
||||||
@@ -0,0 +1,32 @@
|
|||||||
|
|
||||||
|
The shared library will be installed at:
|
||||||
|
|
||||||
|
/usr/lib/libhardened_malloc.so
|
||||||
|
/usr/lib/libhardened_malloc-light.so
|
||||||
|
|
||||||
|
It's will NOT become active on its own. To enable it system-wide, you must preload it.
|
||||||
|
|
||||||
|
1. Test it first! Make sure a normal binary still runs:
|
||||||
|
|
||||||
|
LD_PRELOAD=/usr/lib/libhardened_malloc.so /bin/true && echo OK
|
||||||
|
LD_PRELOAD=/usr/lib/libhardened_malloc-light.so /bin/true && echo OK
|
||||||
|
|
||||||
|
If that prints OK, the library loads cleanly on this system.
|
||||||
|
|
||||||
|
2. Enable system-wide by adding this single line to /etc/ld.so.preload
|
||||||
|
(create if file doesn't exist):
|
||||||
|
|
||||||
|
/usr/lib/libhardened_malloc.so
|
||||||
|
|
||||||
|
for light variant:
|
||||||
|
/usr/lib/libhardened_malloc-light.so
|
||||||
|
|
||||||
|
Per-process alternative (safer to trial): just export LD_PRELOAD as above
|
||||||
|
for the programs you want, instead of editing ld.so.preload.
|
||||||
|
|
||||||
|
################ WARNING ################
|
||||||
|
|
||||||
|
/etc/ld.so.preload is loaded by EVERY dynamically-linked program.
|
||||||
|
If provided .so files are ever missing or broken while listed there, essential
|
||||||
|
tools (your shell, sudo , xbps) may fail to start and you can lock
|
||||||
|
yourself out of a running system.
|
||||||
@@ -0,0 +1,25 @@
|
|||||||
|
# Template file for 'hardened_malloc'
|
||||||
|
pkgname=hardened_malloc
|
||||||
|
version=14
|
||||||
|
revision=1
|
||||||
|
build_style=gnu-makefile
|
||||||
|
short_desc="Hardened memory allocator from GrapheneOS"
|
||||||
|
maintainer="desolate.land"
|
||||||
|
license="MIT"
|
||||||
|
homepage="https://github.com/GrapheneOS/hardened_malloc"
|
||||||
|
distfiles="https://github.com/GrapheneOS/hardened_malloc/archive/refs/tags/${version}.tar.gz"
|
||||||
|
checksum=4cd95ff3b83c433ebc6269d0778d79eb3480b7d5bc873503e1cc3768546bdbec
|
||||||
|
|
||||||
|
do_build()
|
||||||
|
{
|
||||||
|
make ${makejobs} VARIANT=default
|
||||||
|
make ${makejobs} VARIANT=light
|
||||||
|
}
|
||||||
|
|
||||||
|
do_install()
|
||||||
|
{
|
||||||
|
vinstall out/libhardened_malloc.so 755 usr/lib
|
||||||
|
vinstall out-light/libhardened_malloc-light.so 755 usr/lib
|
||||||
|
|
||||||
|
vlicense LICENSE
|
||||||
|
}
|
||||||
@@ -0,0 +1,56 @@
|
|||||||
|
# Template file for 'odin'
|
||||||
|
pkgname=odin
|
||||||
|
version=2026.06
|
||||||
|
revision=1
|
||||||
|
_tag="dev-${version//./-}"
|
||||||
|
archs="x86_64"
|
||||||
|
hostmakedepends="clang llvm22 llvm22-devel make which"
|
||||||
|
makedepends="llvm22-devel"
|
||||||
|
checkdepends="python3"
|
||||||
|
depends="clang"
|
||||||
|
short_desc="Data-oriented programming language"
|
||||||
|
maintainer="Desolate"
|
||||||
|
license="BSD-3-Clause"
|
||||||
|
homepage="https://odin-lang.org/"
|
||||||
|
nostrip=yes
|
||||||
|
distfiles="https://github.com/odin-lang/Odin/archive/refs/tags/${_tag}.tar.gz"
|
||||||
|
checksum=9f91df15e06e782bdd2825926efc256ad1a79b3e022a1398e4e10dcc4d4d95fa
|
||||||
|
wrksrc="Odin-${_tag}"
|
||||||
|
|
||||||
|
do_build() {
|
||||||
|
export CXX=clang++
|
||||||
|
export LLVM_CONFIG=llvm-config
|
||||||
|
make release
|
||||||
|
|
||||||
|
make -C vendor/cgltf/src
|
||||||
|
make -C vendor/miniaudio/src
|
||||||
|
make -C vendor/stb/src
|
||||||
|
}
|
||||||
|
|
||||||
|
do_check() {
|
||||||
|
./odin check examples/all -strict-style
|
||||||
|
python3 tests/core/download_assets.py tests/core/assets
|
||||||
|
./odin test tests/core/speed.odin -o:speed -file -all-packages
|
||||||
|
./odin test tests/vendor -all-packages
|
||||||
|
./odin test tests/internal -all-packages
|
||||||
|
}
|
||||||
|
|
||||||
|
do_install() {
|
||||||
|
vmkdir usr/lib/odin
|
||||||
|
vinstall odin 755 usr/lib/odin
|
||||||
|
for d in base core shared vendor; do
|
||||||
|
vcopy "$d" usr/lib/odin
|
||||||
|
done
|
||||||
|
|
||||||
|
# Create wrapper script to ensure ODIN_ROOT is set correctly
|
||||||
|
cat > odin.sh <<EOF
|
||||||
|
#!/bin/sh
|
||||||
|
export ODIN_ROOT=/usr/lib/odin
|
||||||
|
exec /usr/lib/odin/odin "\$@"
|
||||||
|
EOF
|
||||||
|
vbin odin.sh odin
|
||||||
|
|
||||||
|
vlicense LICENSE
|
||||||
|
vdoc PROPOSAL-PROCESS.md
|
||||||
|
vdoc README.md
|
||||||
|
}
|
||||||
@@ -0,0 +1,30 @@
|
|||||||
|
# Template file for 'yazi'
|
||||||
|
pkgname=yazi
|
||||||
|
version=26.5.6
|
||||||
|
revision=1
|
||||||
|
build_style=cargo
|
||||||
|
hostmakedepends="pkg-config"
|
||||||
|
makedepends="oniguruma-devel lua54-devel"
|
||||||
|
depends="nerd-fonts-symbols-ttf"
|
||||||
|
short_desc="Blazing fast terminal file manager, based on async I/O"
|
||||||
|
maintainer="Bnyro <bnyro@tutanota.com>"
|
||||||
|
license="MIT"
|
||||||
|
homepage="https://yazi-rs.github.io"
|
||||||
|
changelog="https://github.com/sxyazi/yazi/releases"
|
||||||
|
distfiles="https://github.com/sxyazi/yazi/archive/refs/tags/v${version}.tar.gz"
|
||||||
|
checksum=a18445df86a20068f7b17609d12d6f635de488958579ae7a2b143a244ba7e63f
|
||||||
|
|
||||||
|
export VERGEN_GIT_SHA="${version}_${revision}"
|
||||||
|
# enable the generation of shell auto completions
|
||||||
|
export YAZI_GEN_COMPLETIONS=true
|
||||||
|
|
||||||
|
do_install() {
|
||||||
|
vbin target/${RUST_TARGET}/release/yazi
|
||||||
|
vbin target/${RUST_TARGET}/release/ya
|
||||||
|
vcompletion yazi-boot/completions/yazi.bash bash
|
||||||
|
vcompletion yazi-boot/completions/yazi.fish fish
|
||||||
|
vcompletion yazi-boot/completions/_yazi zsh
|
||||||
|
vinstall assets/yazi.desktop 644 /usr/share/applications
|
||||||
|
vinstall assets/logo.png 644 /usr/share/pixmaps yazi.png
|
||||||
|
vlicense LICENSE
|
||||||
|
}
|
||||||
Binary file not shown.
|
After Width: | Height: | Size: 770 KiB |
@@ -0,0 +1 @@
|
|||||||
|
https://w.wallhaven.cc/full/md/wallhaven-mdo2vk.jpg
|
||||||
Reference in New Issue
Block a user