relocate
This commit is contained in:
parent
2e08513f72
commit
2a244b46ff
|
@ -1,81 +0,0 @@
|
||||||
#define AMBER #FFBD00
|
|
||||||
#define BLACK #000000
|
|
||||||
#define PINK #FFDBDB
|
|
||||||
#define WHITE #FFFFFF
|
|
||||||
|
|
||||||
#define FOREGROUND PINK
|
|
||||||
#define BACKGROUND BLACK
|
|
||||||
|
|
||||||
! unscii font
|
|
||||||
*faceName: unscii:antialias=false
|
|
||||||
*faceSize: 12
|
|
||||||
|
|
||||||
*cursorColor: FOREGROUND
|
|
||||||
*Foreground: FOREGROUND
|
|
||||||
*Background: BACKGROUND
|
|
||||||
|
|
||||||
! xterm specific stuff
|
|
||||||
xterm*loginshell: true
|
|
||||||
xterm*locale: UTF-8
|
|
||||||
xterm*titleModes: 16
|
|
||||||
xterm*metaSendsEscape: true
|
|
||||||
xterm*utf8: 1
|
|
||||||
xterm*utf8Fonts: 1
|
|
||||||
xterm*utf8Title: true
|
|
||||||
|
|
||||||
! I used to use these but they make it really hard to see default Lynx.
|
|
||||||
|
|
||||||
! "quantified colors" but every nybble
|
|
||||||
! is decremented ======================
|
|
||||||
! black/dark-gray
|
|
||||||
!*.color0: #000000
|
|
||||||
!*.color8: #343434
|
|
||||||
! red/orange
|
|
||||||
!*.color1: #DE9591
|
|
||||||
!*.color9: #D09E74
|
|
||||||
! green/aquamarine
|
|
||||||
!*.color2: #70B880
|
|
||||||
!*.color10: #49BB9E
|
|
||||||
! amber/yellow
|
|
||||||
!*.color3: #958350
|
|
||||||
!*.color11: #B7B763
|
|
||||||
! blue/violet
|
|
||||||
!*.color4: #92A7DE
|
|
||||||
!*.color12: #BB9BDC
|
|
||||||
! magenta/rose
|
|
||||||
!*.color5: #D592CB
|
|
||||||
!*.color13: #E190B1
|
|
||||||
! cyan/azure
|
|
||||||
!*.color6: #40B9BC
|
|
||||||
!*.color14: #63B2D3
|
|
||||||
! gray/white
|
|
||||||
!*.color7: #707070
|
|
||||||
!*.color15: #B0B0B0
|
|
||||||
! =====================================
|
|
||||||
|
|
||||||
! "quantified colors" =================
|
|
||||||
! black/dark-gray
|
|
||||||
!*.color0: #101010
|
|
||||||
!*.color8: #454545
|
|
||||||
! red/orange
|
|
||||||
!*.color1: #EFA6A2
|
|
||||||
!*.color9: #E0AF85
|
|
||||||
! green/aquamarine
|
|
||||||
!*.color2: #80C990
|
|
||||||
!*.color10: #5ACCAF
|
|
||||||
! amber/yellow
|
|
||||||
!*.color3: #A69460
|
|
||||||
!*.color11: #C8C874
|
|
||||||
! blue/violet
|
|
||||||
!*.color4: #A3B8EF
|
|
||||||
!*.color12: #CCACED
|
|
||||||
! magenta/rose
|
|
||||||
!*.color5: #E6A3DC
|
|
||||||
!*.color13: #F2A1C2
|
|
||||||
! cyan/azure
|
|
||||||
!*.color6: #50CACD
|
|
||||||
!*.color14: #74C3E4
|
|
||||||
! gray/white
|
|
||||||
!*.color7: #808080
|
|
||||||
!*.color15: #C0C0C0
|
|
||||||
! =====================================
|
|
|
@ -1,46 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
# audio drive
|
|
||||||
#alias audio="sudo mount -L 'AUDIO' /mnt/audio"
|
|
||||||
|
|
||||||
alias awk="nawk"
|
|
||||||
alias b="$BROWSER"
|
|
||||||
alias cls="clear"
|
|
||||||
alias cp="cp -iv"
|
|
||||||
alias doas="$SUDO"
|
|
||||||
alias e="$EDITOR"
|
|
||||||
alias ipconfig="ifconfig"
|
|
||||||
#alias ls="9 ls"
|
|
||||||
alias ls="ls -1A"
|
|
||||||
alias mpv="LIBGL_ALWAYS_SOFTWARE=1 mpv --vo=x11"
|
|
||||||
alias mullvad="curl https://am.i.mullvad.net/connected"
|
|
||||||
alias mv="mv -iv"
|
|
||||||
alias p="ping 1.1.1.1"
|
|
||||||
|
|
||||||
# media hard drive
|
|
||||||
alias partone="sudo mount -L 'PARTONE' /mnt/partone"
|
|
||||||
alias prat="$HOME/src/packrat/prat"
|
|
||||||
|
|
||||||
pyenv() {
|
|
||||||
eq $# 0 \
|
|
||||||
&& . ./bin/activate \
|
|
||||||
|| . $1/bin/activate
|
|
||||||
}
|
|
||||||
|
|
||||||
alias sensors="watch sensors"
|
|
||||||
alias sudo="$SUDO"
|
|
||||||
|
|
||||||
# Wacom Intuos 2
|
|
||||||
#alias taboff="xsetwacom set 'Wacom Intuos2 6x8 Pen stylus' MapToOutput LVDS-1"
|
|
||||||
#alias tabon="xsetwacom set 'Wacom Intuos2 6x8 Pen stylus' MapToOutput VGA-1"
|
|
||||||
|
|
||||||
alias units="units --history /dev/null"
|
|
||||||
alias v="$VISUAL"
|
|
||||||
alias weather="curl wttr.in/lewiston+maine?m"
|
|
||||||
|
|
||||||
webm() {
|
|
||||||
ffmpeg -i $1 -c:v libvpx -b:v 1M -c:a libvorbis "$(printf "%b" "$1" | awk -F '.' '{print $1}')".webm
|
|
||||||
}
|
|
||||||
|
|
||||||
alias y=youtube-dl
|
|
||||||
alias yay="paru"
|
|
|
@ -1,12 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
bspc config active_border_color '#FFCACA'
|
|
||||||
bspc config focus_follows_pointer true
|
|
||||||
bspc config focused_border_color '#FFFFFF'
|
|
||||||
bspc config normal_border_color '#FFDBDB'
|
|
||||||
bspc config window_gap 0
|
|
||||||
bspc monitor -d 1 2 3 4 5 6 7 8 9 10
|
|
||||||
bspc rule -a XClock manage=off # thanks emanuele6
|
|
||||||
bspc rule -a xload manage=off
|
|
||||||
xdo lower -NXClock
|
|
||||||
xdo lower -Nxload
|
|
||||||
data | lemonbar -bf '-*-unscii-*-*-*-*-*-*-*-*-*-*-*-*' -F '#FFDBDB'
|
|
|
@ -1,22 +0,0 @@
|
||||||
set -x
|
|
||||||
# load X default stuff
|
|
||||||
! [ -e $HOME/.Xresources ] \
|
|
||||||
|| xrdb -load $HOME/.Xresources
|
|
||||||
# wallpaper
|
|
||||||
WALLPAPER="$HOME/Pictures/Wallpapers/nosebleed.jpg"
|
|
||||||
! [ -e "$WALLPAPER" ] \
|
|
||||||
|| feh --bg-center "$WALLPAPER"
|
|
||||||
# internal display
|
|
||||||
xrandr \
|
|
||||||
--output "$(xrandr | grep ' connected ' | awk '{print $1}' | grep LVDS)" \
|
|
||||||
--mode 1280x800 --rate 60.00
|
|
||||||
# VGA monitor
|
|
||||||
if xrandr | grep " connected " | awk '{ print$1 }' | grep "VGA" >/dev/null 2>&1; then
|
|
||||||
! [ "$MONITOR" = "MV720" ] \
|
|
||||||
|| xrandr \
|
|
||||||
--output "$(xrandr | grep ' connected ' | awk '{print $1}' | grep VGA)" \
|
|
||||||
--above "$(xrandr | grep ' connected ' | awk '{print $1}' | grep LVDS)" \
|
|
||||||
--mode 1024x768 --rate 85.00
|
|
||||||
fi
|
|
||||||
# keybind manager
|
|
||||||
pgrep -x sxhkd >/dev/null || sxhkd &
|
|
|
@ -1 +0,0 @@
|
||||||
exec bspwm
|
|
|
@ -1,3 +0,0 @@
|
||||||
. "$DISPLAYM_CONFIG/merge_xinitrc.sh"
|
|
||||||
. "$DISPLAYM_CONFIG/merge_sxhkdrc.sh"
|
|
||||||
startx
|
|
|
@ -1,22 +0,0 @@
|
||||||
# thanks weedsmokingjew
|
|
||||||
|
|
||||||
mod1 + {_,shift + }F4
|
|
||||||
bspc node -{c,k}
|
|
||||||
|
|
||||||
mod1 + {_,shift + }{1-4,q,w,e,r,a,s}
|
|
||||||
bspc {desktop -f,node -d} '^{1-4,5,6,7,8,9,10}'
|
|
||||||
|
|
||||||
mod1 + shift + e
|
|
||||||
[ "Yes." = $(printf "No.\nYes." | dmenu -p "You pressed the exit shortcut. Do you really want to exit? This will end your X session.") ] && bspc quit
|
|
||||||
|
|
||||||
mod1 + f
|
|
||||||
bspc node -t '~fullscreen'
|
|
||||||
|
|
||||||
mod1 + {h,j,k,l}
|
|
||||||
bspc node -f {west,south,north,east}
|
|
||||||
|
|
||||||
mod1 + shift + {h,j,k,l}
|
|
||||||
bspc node -s {west,south,north,east}
|
|
||||||
|
|
||||||
mod1 + shift + r
|
|
||||||
bspc wm -r && pkill -USR1 -x sxhkd
|
|
|
@ -1,7 +0,0 @@
|
||||||
# xclock
|
|
||||||
xclock -geometry 180x180-10+10 -update 1 &
|
|
||||||
# xload
|
|
||||||
xload -geometry 180x180-10+200 -update 1 &
|
|
||||||
# bar
|
|
||||||
data | lemonbar -bf '-*-unscii-*-*-*-*-*-*-*-*-*-*-*-*' -F '#FFDBDB' &
|
|
||||||
exec ctwm
|
|
|
@ -1,3 +0,0 @@
|
||||||
. "$DISPLAYM_CONFIG/merge_xinitrc.sh"
|
|
||||||
. "$DISPLAYM_CONFIG/default_sxhkdrc.sh"
|
|
||||||
startx
|
|
|
@ -1,2 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
cp "$DISPLAYM_CONFIG/sxhkdrc" "$HOME/.config/sxhkd/sxhkdrc"
|
|
|
@ -1,2 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
cp "$DISPLAYM_CONFIG/.xinitrc" "$HOME/.xinitrc"
|
|
|
@ -1 +0,0 @@
|
||||||
exec i3
|
|
|
@ -1,3 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
. "$DISPLAYM_CONFIG/merge_xinitrc.sh"
|
|
||||||
. "$DISPLAYM_CONFIG/merge_sxhkdrc.sh"
|
|
|
@ -1,27 +0,0 @@
|
||||||
mod1 + F4
|
|
||||||
i3-msg kill
|
|
||||||
|
|
||||||
mod1 + {h,j,k,l}
|
|
||||||
i3-msg focus {left,down,up,right}
|
|
||||||
|
|
||||||
mod1 + f
|
|
||||||
i3-msg fullscreen toggle
|
|
||||||
mod1 + F11
|
|
||||||
i3-msg fullscreen toggle
|
|
||||||
|
|
||||||
mod1 + {s,w}
|
|
||||||
i3-msg layout {stacking,tabbed}
|
|
||||||
mod1 + e
|
|
||||||
i3-msg layout toggle split
|
|
||||||
|
|
||||||
mod1 + space
|
|
||||||
i3-msg focus mode_toggle
|
|
||||||
|
|
||||||
mod1 + shift + space
|
|
||||||
i3-msg floating toggle
|
|
||||||
|
|
||||||
mod1 + shift + {h,j,k,l}
|
|
||||||
i3-msg move {left,down,up,right}
|
|
||||||
|
|
||||||
mod1 + shift + e
|
|
||||||
[ "Yes." = $(printf "No.\nYes." | dmenu -p "You pressed the exit shortcut. Do you really want to exit? This will end your X session.") ] && i3-msg exit
|
|
|
@ -1,3 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
cat "$DISPLAYM_CONFIG/sxhkdrc" "$DISPLAYM_CONFIG/$WM/sxhkdrc" \
|
|
||||||
>"$HOME/.config/sxhkd/sxhkdrc"
|
|
|
@ -1,2 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
cat "$DISPLAYM_CONFIG/.xinitrc" "$DISPLAYM_CONFIG/$WM/.xinitrc" >"$HOME/.xinitrc"
|
|
|
@ -1,50 +0,0 @@
|
||||||
XF86AudioMute
|
|
||||||
volume m
|
|
||||||
XF86Audio{Lower,Raise}Volume
|
|
||||||
volume r {-5,5}
|
|
||||||
XF86Launch1
|
|
||||||
$TERMINAL
|
|
||||||
|
|
||||||
XF86TaskPane
|
|
||||||
rotate LVDS1
|
|
||||||
|
|
||||||
control + shift + Escape
|
|
||||||
$TERMINAL -e htop
|
|
||||||
Print
|
|
||||||
scrot
|
|
||||||
|
|
||||||
mod1 + {9,0}
|
|
||||||
volume r {-5,5}
|
|
||||||
# cred 4 https://github.com/patrickbolle/dotfiles/
|
|
||||||
mod1 + equal
|
|
||||||
light -A 5
|
|
||||||
mod1 + shift + equal
|
|
||||||
light -A 1
|
|
||||||
mod1 + minus
|
|
||||||
light -U 5
|
|
||||||
mod1 + shift + minus
|
|
||||||
light -U 1
|
|
||||||
|
|
||||||
mod1 + shift + r
|
|
||||||
pkill -USR1 sxhkd
|
|
||||||
|
|
||||||
mod1 + t
|
|
||||||
dmenu="dmenu -fn unscii -nb '#000' -nf '#FFDBDB' -sb '#FFDBDB' -sf '#000'" autotranslate
|
|
||||||
|
|
||||||
mod1 + shift + i
|
|
||||||
pkill dmenubar
|
|
||||||
|
|
||||||
mod1 + d
|
|
||||||
dmenu_run -fn unscii -nb '#000' -nf '#FFDBDB' -p '$' -sb '#FFDBDB' -sf '#000'
|
|
||||||
|
|
||||||
mod1 + Return
|
|
||||||
$TERMINAL
|
|
||||||
|
|
||||||
mod1 + v
|
|
||||||
$TERMINAL -e aiomixer
|
|
||||||
|
|
||||||
mod1 + b
|
|
||||||
$BROWSER
|
|
||||||
|
|
||||||
mod1 + m
|
|
||||||
volume m
|
|
|
@ -1,144 +0,0 @@
|
||||||
# i3 config file (v4)
|
|
||||||
# Please see https://i3wm.org/docs/userguide.html for a complete reference!
|
|
||||||
|
|
||||||
set $mod Mod1
|
|
||||||
|
|
||||||
# Font for window titles
|
|
||||||
font pango:unscii 12
|
|
||||||
|
|
||||||
# keybindings
|
|
||||||
exec_always --no-startup-id sxhkd
|
|
||||||
|
|
||||||
# Use Mouse+$mod to drag floating windows to their wanted position
|
|
||||||
floating_modifier $mod
|
|
||||||
|
|
||||||
# start pulseaudio
|
|
||||||
exec --no-startup-id pulseaudio --start
|
|
||||||
|
|
||||||
# Define names for default workspaces for which we configure key bindings later on.
|
|
||||||
# We use variables to avoid repeating the names in multiple places.
|
|
||||||
set $ws1 "1"
|
|
||||||
set $ws2 "2"
|
|
||||||
set $ws3 "3"
|
|
||||||
set $ws4 "4"
|
|
||||||
set $ws5 "5"
|
|
||||||
set $ws6 "6"
|
|
||||||
set $ws7 "7"
|
|
||||||
set $ws8 "8"
|
|
||||||
set $ws9 "9"
|
|
||||||
set $ws10 "10"
|
|
||||||
|
|
||||||
# switch to workspace
|
|
||||||
bindsym $mod+1 workspace number $ws1
|
|
||||||
bindsym $mod+2 workspace number $ws2
|
|
||||||
bindsym $mod+3 workspace number $ws3
|
|
||||||
bindsym $mod+4 workspace number $ws4
|
|
||||||
bindsym $mod+5 workspace number $ws5
|
|
||||||
bindsym $mod+6 workspace number $ws6
|
|
||||||
bindsym $mod+7 workspace number $ws7
|
|
||||||
bindsym $mod+8 workspace number $ws8
|
|
||||||
bindsym $mod+9 workspace number $ws9
|
|
||||||
bindsym $mod+0 workspace number $ws10
|
|
||||||
|
|
||||||
# move focused container to workspace
|
|
||||||
bindsym $mod+Shift+1 move container to workspace number $ws1
|
|
||||||
bindsym $mod+Shift+2 move container to workspace number $ws2
|
|
||||||
bindsym $mod+Shift+3 move container to workspace number $ws3
|
|
||||||
bindsym $mod+Shift+4 move container to workspace number $ws4
|
|
||||||
bindsym $mod+Shift+5 move container to workspace number $ws5
|
|
||||||
bindsym $mod+Shift+6 move container to workspace number $ws6
|
|
||||||
bindsym $mod+Shift+7 move container to workspace number $ws7
|
|
||||||
bindsym $mod+Shift+8 move container to workspace number $ws8
|
|
||||||
bindsym $mod+Shift+9 move container to workspace number $ws9
|
|
||||||
bindsym $mod+Shift+0 move container to workspace number $ws10
|
|
||||||
|
|
||||||
# reload the configuration file
|
|
||||||
bindsym $mod+Shift+c reload
|
|
||||||
|
|
||||||
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
|
|
||||||
bindsym $mod+Shift+r restart
|
|
||||||
|
|
||||||
# exit i3 (logs you out of your X session)
|
|
||||||
bindsym $mod+Shift+e exec [ "Yes." = $(printf "No.\nYes." | dmenu -p "You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.") ] && i3-msg exit
|
|
||||||
|
|
||||||
# resize window (you can also use the mouse for that)
|
|
||||||
mode "resize" {
|
|
||||||
# These bindings trigger as soon as you enter the resize mode
|
|
||||||
|
|
||||||
# Pressing left will shrink the window’s width.
|
|
||||||
# Pressing right will grow the window’s width.
|
|
||||||
# Pressing up will shrink the window’s height.
|
|
||||||
# Pressing down will grow the window’s height.
|
|
||||||
bindsym h resize shrink width 10 px or 10 ppt
|
|
||||||
bindsym j resize grow height 10 px or 10 ppt
|
|
||||||
bindsym k resize shrink height 10 px or 10 ppt
|
|
||||||
bindsym l resize grow width 10 px or 10 ppt
|
|
||||||
|
|
||||||
# back to normal: Enter or Escape or $mod+r
|
|
||||||
bindsym Return mode "default"
|
|
||||||
bindsym Escape mode "default"
|
|
||||||
bindsym $mod+r mode "default"
|
|
||||||
}
|
|
||||||
|
|
||||||
bindsym $mod+r mode "resize"
|
|
||||||
|
|
||||||
# Start i3bar to display a workspace bar (plus the system information i3status
|
|
||||||
# finds out, if available)
|
|
||||||
bar {
|
|
||||||
status_command i3status
|
|
||||||
separator_symbol " // "
|
|
||||||
|
|
||||||
# defaults
|
|
||||||
# colors {
|
|
||||||
# background #ffffff
|
|
||||||
# statusline #000000
|
|
||||||
# separator #ff0000
|
|
||||||
# focused_workspace #4c7899 #285577 #ffffff
|
|
||||||
# active_workspace #333333 #5f676a #ffffff
|
|
||||||
# inactive_workspace #333333 #222222 #888888
|
|
||||||
# urgent_workspace #2f343a #900000 #ffffff
|
|
||||||
# binding_mode #2f343a #900000 #ffffff
|
|
||||||
# }
|
|
||||||
|
|
||||||
colors {
|
|
||||||
background #ffdbdb
|
|
||||||
statusline #000000
|
|
||||||
separator #ff0000
|
|
||||||
# border bg text
|
|
||||||
focused_workspace #ff0000 #ff0000 #ffffff
|
|
||||||
active_workspace #ffffff #ffffff #000000
|
|
||||||
inactive_workspace #000000 #000000 #ffffff
|
|
||||||
urgent_workspace #2f343a #900000 #ff0000
|
|
||||||
binding_mode #2f343a #900000 #ffffff
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
# color customization
|
|
||||||
# class border bg text indicator child_border
|
|
||||||
client.focused #ff0000 #ffffff #ff0000 #2e9ef4 #ff0000
|
|
||||||
client.focused_inactive #ffffff #ffffff #000000 #484e50 #000000
|
|
||||||
client.unfocused #000000 #000000 #ff0000 #292d2e #ffffff
|
|
||||||
client.urgent #900000 #900000 #ffffff #900000 #900000
|
|
||||||
client.placeholder #000000 #0c0c0c #ffffff #000000 #0c0c0c
|
|
||||||
|
|
||||||
client.background #ffffff
|
|
||||||
|
|
||||||
# Wallpaper
|
|
||||||
exec --no-startup-id feh --bg-center /home/trinity/Pictures/Wallpapers/akirablast.jpg
|
|
||||||
|
|
||||||
# moving workspaces
|
|
||||||
bindsym $mod+Shift+greater move container to output right
|
|
||||||
bindsym $mod+Shift+less move container to output left
|
|
||||||
|
|
||||||
# Gaps
|
|
||||||
#gaps inner 10
|
|
||||||
#gaps outer 10
|
|
||||||
#gaps horizontal 10
|
|
||||||
#gaps vertical 10
|
|
||||||
#gaps top 10
|
|
||||||
#gaps right 10
|
|
||||||
#gaps bottom 10
|
|
||||||
#gaps left 10
|
|
||||||
|
|
||||||
# disables titlebars
|
|
||||||
new_window 1pixel
|
|
|
@ -1,53 +0,0 @@
|
||||||
# i3status configuration file.
|
|
||||||
# see "man i3status" for documentation.
|
|
||||||
|
|
||||||
# It is important that this file is edited as UTF-8.
|
|
||||||
# The following line should contain a sharp s:
|
|
||||||
# ß
|
|
||||||
# If the above line is not correctly displayed, fix your editor first!
|
|
||||||
|
|
||||||
general {
|
|
||||||
colors = false
|
|
||||||
interval = 5
|
|
||||||
}
|
|
||||||
|
|
||||||
#order += "ipv6"
|
|
||||||
order += "wireless _first_"
|
|
||||||
order += "ethernet _first_"
|
|
||||||
order += "battery all"
|
|
||||||
order += "disk /"
|
|
||||||
#order += "load"
|
|
||||||
order += "memory"
|
|
||||||
order += "tztime local"
|
|
||||||
|
|
||||||
wireless _first_ {
|
|
||||||
format_up = "wlan0: (%quality at %essid) %ip"
|
|
||||||
format_down = "wlan0 DOWN"
|
|
||||||
}
|
|
||||||
|
|
||||||
ethernet _first_ {
|
|
||||||
format_up = "eth0: %ip (%speed)"
|
|
||||||
format_down = "eth0 DOWN"
|
|
||||||
}
|
|
||||||
|
|
||||||
battery all {
|
|
||||||
format = "%status %percentage %remaining"
|
|
||||||
}
|
|
||||||
|
|
||||||
disk "/" {
|
|
||||||
format = "%avail"
|
|
||||||
}
|
|
||||||
|
|
||||||
#load {
|
|
||||||
# format = "%1min"
|
|
||||||
#}
|
|
||||||
|
|
||||||
memory {
|
|
||||||
format = "%used/%available"
|
|
||||||
threshold_degraded = "1G"
|
|
||||||
format_degraded = "MEMORY < %available"
|
|
||||||
}
|
|
||||||
|
|
||||||
tztime local {
|
|
||||||
format = "%Y-%m-%dT%H:%M:%S"
|
|
||||||
}
|
|
|
@ -1,52 +0,0 @@
|
||||||
XF86AudioMicMute
|
|
||||||
pactl set-source-mute @DEFAULT_SOURCE@ toggle
|
|
||||||
XF86AudioMute
|
|
||||||
pactl -- set-sink-mute @DEFAULT_SINK@ toggle
|
|
||||||
XF86Audio{Lower,Raise}Volume
|
|
||||||
pactl set-sink-volume @DEFAULT_SINK@ {"-5%","+5%"}
|
|
||||||
XF86Audio{Play,Pause,Next,Prev}
|
|
||||||
playerctl {play,pause,next,previous}
|
|
||||||
XF86Launch1
|
|
||||||
$TERMINAL
|
|
||||||
|
|
||||||
control + shift + Escape
|
|
||||||
$TERMINAL -e htop
|
|
||||||
Print
|
|
||||||
scrot
|
|
||||||
|
|
||||||
# cred 4 https://github.com/patrickbolle/dotfiles/
|
|
||||||
mod1 + equal
|
|
||||||
light -A 5
|
|
||||||
mod1 + shift + equal
|
|
||||||
light -A 1
|
|
||||||
mod1 + minus
|
|
||||||
light -U 5
|
|
||||||
mod1 + shift + minus
|
|
||||||
light -U 1
|
|
||||||
|
|
||||||
mod1 + shift + r
|
|
||||||
pkill -USR1 sxhkd
|
|
||||||
|
|
||||||
mod1 + i
|
|
||||||
ps aux | grep dmenubar | grep -v grep && pkill dmenubar; \
|
|
||||||
data | /home/trinity/src/dmenubar/dmenubar -b
|
|
||||||
|
|
||||||
mod1 + shift + i
|
|
||||||
pkill dmenubar
|
|
||||||
|
|
||||||
mod1 + d
|
|
||||||
dmenu_run
|
|
||||||
|
|
||||||
mod1 + Return
|
|
||||||
$TERMINAL
|
|
||||||
|
|
||||||
mod1 + v
|
|
||||||
$TERMINAL -e pulsemixer
|
|
||||||
|
|
||||||
mod1 + b
|
|
||||||
$BROWSER
|
|
||||||
|
|
||||||
mod1 + m
|
|
||||||
pactl -- set-sink-mute @DEFAULT_SINK@ toggle
|
|
||||||
mod1 + shift + m
|
|
||||||
pactl set-source-mute @DEFAULT_SOURCE@ toggle
|
|
|
@ -1,8 +0,0 @@
|
||||||
auto_refresh_feeds: -1
|
|
||||||
cap: 200
|
|
||||||
consumption_file_name: /home/trinity/.ytfeed/consumption.txt
|
|
||||||
feed_directory: /home/trinity/.ytfeed/feeds/
|
|
||||||
xml_storage_directory: /home/trinity/.ytfeed/feeds/
|
|
||||||
video_downloader: youtube-dlp
|
|
||||||
viewer: youtube-dl-mpv
|
|
||||||
web_browser: firefox-developer-edition
|
|
|
@ -1,110 +0,0 @@
|
||||||
# BEGIN ctwmrc
|
|
||||||
# thanks to https://datagubbe.se/twm/
|
|
||||||
NoDefaults
|
|
||||||
DontShowWelcomeWindow
|
|
||||||
|
|
||||||
# fonts
|
|
||||||
TitleFont "-*-helvetica-bold-r-normal-*-12-*-*-*-*-*-iso10646-1"
|
|
||||||
ResizeFont "-*-helvetica-bold-r-normal-*-12-*-*-*-*-*-iso10646-1"
|
|
||||||
MenuFont "-*-helvetica-bold-r-normal-*-12-*-*-*-*-*-iso10646-1"
|
|
||||||
IconFont "-*-helvetica-bold-r-normal-*-12-*-*-*-*-*-iso10646-1"
|
|
||||||
IconManagerFont "-*-helvetica-bold-r-normal-*-12-*-*-*-*-*-iso10646-1"
|
|
||||||
|
|
||||||
Color {
|
|
||||||
TitleBackground "#FFDBDB"
|
|
||||||
TitleForeground "#000000"
|
|
||||||
BorderColor "#FFDBDB"
|
|
||||||
BorderTileBackground "#206090"
|
|
||||||
BorderTileForeground "#206090"
|
|
||||||
|
|
||||||
MenuBackground "Gray"
|
|
||||||
MenuForeground "Black"
|
|
||||||
MenuShadowColor "#004070"
|
|
||||||
MenuTitleBackground "#C06077"
|
|
||||||
MenuTitleForeground "White"
|
|
||||||
}
|
|
||||||
|
|
||||||
WindowRing
|
|
||||||
WindowRingExclude {
|
|
||||||
"xload"
|
|
||||||
"xclock"
|
|
||||||
}
|
|
||||||
|
|
||||||
Cursors {
|
|
||||||
Frame "left_ptr"
|
|
||||||
Title "left_ptr"
|
|
||||||
Icon "left_ptr"
|
|
||||||
IconMgr "hand2"
|
|
||||||
Move "fleur"
|
|
||||||
Resize "fleur"
|
|
||||||
Menu "sb_left_arrow"
|
|
||||||
Button "hand2"
|
|
||||||
Wait "watch"
|
|
||||||
Select "dot"
|
|
||||||
Destroy "pirate"
|
|
||||||
}
|
|
||||||
|
|
||||||
NoBorder {
|
|
||||||
"xclock"
|
|
||||||
"xload"
|
|
||||||
}
|
|
||||||
|
|
||||||
NoTitle {
|
|
||||||
"TWM Icon Manager"
|
|
||||||
"xload"
|
|
||||||
"xclock"
|
|
||||||
"feh"
|
|
||||||
"xeyes"
|
|
||||||
}
|
|
||||||
|
|
||||||
Function "move-and-raise" {
|
|
||||||
f.move
|
|
||||||
f.deltastop
|
|
||||||
f.raise
|
|
||||||
}
|
|
||||||
|
|
||||||
Function "deiconify-and-raise" {
|
|
||||||
f.deiconify
|
|
||||||
f.raise
|
|
||||||
}
|
|
||||||
Function "next-and-raise" {
|
|
||||||
f.downiconmgr
|
|
||||||
f.raise
|
|
||||||
}
|
|
||||||
|
|
||||||
Button3 = : root : f.menu "apps"
|
|
||||||
|
|
||||||
Button1 = : title : f.function "move-and-raise"
|
|
||||||
Button2 = : title : f.delete
|
|
||||||
Button3 = : title : f.menu "winops"
|
|
||||||
Button1 = : frame : f.function "move-and-raise"
|
|
||||||
Button2 = : frame : f.nop
|
|
||||||
Button3 = : frame : f.resize
|
|
||||||
|
|
||||||
Button1 = : iconmgr : f.function "deiconify-and-raise"
|
|
||||||
Button2 = : iconmgr : f.lower
|
|
||||||
Button3 = : iconmgr : f.iconify
|
|
||||||
|
|
||||||
# on NetBSD with non-modular Xorg, bitmaps are stored in
|
|
||||||
# /usr/X11R7/include/X11/bitmaps
|
|
||||||
LeftTitleButton ":xlogo" = f.menu "winops"
|
|
||||||
RightTitleButton "vertmax.xbm" = f.zoom
|
|
||||||
RightTitleButton "close.xbm" = f.delete
|
|
||||||
|
|
||||||
menu "winops" {
|
|
||||||
"Delete" f.delete
|
|
||||||
"Destroy" f.destroy
|
|
||||||
"Fullscreen Zoom" f.fullscreenzoom
|
|
||||||
"Full Zoom" f.fullzoom
|
|
||||||
"Identify" f.identify
|
|
||||||
"Initial size" f.initsize
|
|
||||||
}
|
|
||||||
|
|
||||||
# Workspace Menu
|
|
||||||
menu "apps" {
|
|
||||||
"Workspace" f.title
|
|
||||||
"Restart" f.restart
|
|
||||||
"Exit" f.quit
|
|
||||||
}
|
|
||||||
|
|
||||||
# END twmrc
|
|
|
@ -1,10 +0,0 @@
|
||||||
if [ "$0" = "bash" ] || [ "$0" = "-bash" ]; then complete -c man which; fi
|
|
||||||
|
|
||||||
PS1="; "
|
|
||||||
PS2="; "
|
|
||||||
PS3="; "
|
|
||||||
|
|
||||||
set -o vi
|
|
||||||
|
|
||||||
. $HOME/.aliases
|
|
||||||
. $HOME/.cargo/env
|
|
|
@ -1,13 +0,0 @@
|
||||||
BROWSER=firefox; export BROWSER
|
|
||||||
DOOMWADDIR=/mnt/partone/misc/doomwads/; export DOOMWADDIR
|
|
||||||
EDITOR=ed; export EDITOR
|
|
||||||
PAGER="less"; export PAGER
|
|
||||||
PLAN9=/usr/local/plan9; export PLAN9
|
|
||||||
PATH="$HOME/bin/:$HOME/bin/oneliners/:"$PATH":/usr/pkg/qt5/bin:$PLAN9/bin"; export PATH
|
|
||||||
SUDO="doas"; export SUDO
|
|
||||||
TERMINAL="uxterm"; export TERMINAL
|
|
||||||
UNITS_SYSTEM="si"; export UNITS_SYSTEM
|
|
||||||
VISUAL=vi; export VISUAL
|
|
||||||
|
|
||||||
ENV=$HOME/.env; export ENV
|
|
||||||
. $ENV
|
|
|
@ -1,18 +0,0 @@
|
||||||
set bg=dark
|
|
||||||
set mouse=
|
|
||||||
set nocp
|
|
||||||
set noexpandtab
|
|
||||||
set noim
|
|
||||||
set nois
|
|
||||||
set nu
|
|
||||||
set relativenumber
|
|
||||||
set rnu
|
|
||||||
set ruler
|
|
||||||
set tabstop=8
|
|
||||||
set term=xterm
|
|
||||||
set tf
|
|
||||||
set title
|
|
||||||
set tty=xterm
|
|
||||||
set vb
|
|
||||||
set nowrap
|
|
||||||
syntax on
|
|
|
@ -1,19 +1,7 @@
|
||||||
# devenblake/dotfiles
|
# trinity/dotfiles
|
||||||
Pretty config stuff.
|
Pretty config stuff.
|
||||||
|
|
||||||
![This is a screenshot of my desktop.](https://web.archive.org/web/20200926155417if_/https://i.redd.it/jwhsmokcfcp51.png)
|
![This is a screenshot of my desktop.](https://web.archive.org/web/20200926155417if_/https://i.redd.it/jwhsmokcfcp51.png)
|
||||||
For this configuration, [posted on r/unixporn on 2020-09-25](https://www.reddit.com/r/unixporn/comments/izpvwp/i3gaps_basic_but_it_works/), refer to the [state of the repository around 2020-09-26](https://git.sr.ht/~trinity/dotfiles/tree/7d0a35b6d06c2bb46990087c6a6c4b2a2685d49c) or so.
|
For this configuration, [posted on r/unixporn on 2020-09-25](https://www.reddit.com/r/unixporn/comments/izpvwp/i3gaps_basic_but_it_works/), refer to the [state of the repository around 2020-09-26](https://git.sr.ht/~trinity/dotfiles/tree/7d0a35b6d06c2bb46990087c6a6c4b2a2685d49c) or so.
|
||||||
|
|
||||||
My setup has changed drastically since then.
|
See [trinity/src](https://git.sr.ht/~trinity/src) where these dotfiles have relocated.
|
||||||
|
|
||||||
My shell aliases are in `.aliases` and my general shell configuration is in `.env`.
|
|
||||||
I use `dash` as my shell. I sort of miss tab-completion but it's worth it so I know everything I do is reproducible.
|
|
||||||
|
|
||||||
Refer to `scripts/` for scripts that help me keep everything organized, except for `clone.sh` (which clones all my dotfiles to `~/src/dotfiles/`, where I keep my local copy of this repo).
|
|
||||||
|
|
||||||
A list of all the packages I use is available in `scripts/packages/`, organized by repository availability.
|
|
||||||
|
|
||||||
## License
|
|
||||||
|
|
||||||
See `LICENSE` for the repository license if you want but basically all code, unless otherwise stated, is released unencumbered into the public domain.
|
|
||||||
A notable exception to this is `src/dmenu/config.h` which is licensed under the MIT/X Consortium license as is dmenu; this license can be found in `licenses/DMENU`.
|
|
||||||
|
|
|
@ -1,11 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
[ -n "$dmenu" ] || dmenu=dmenu
|
|
||||||
|
|
||||||
lang="$LANG"
|
|
||||||
# lots of potentially wrong assumptions here
|
|
||||||
printf "%s\n" "$lang" | grep "_" >/dev/null 2>&1 \
|
|
||||||
&& lang="$(printf "%s\n" "$lang" | cut -d '_' -f 1)" \
|
|
||||||
|| lang=en
|
|
||||||
|
|
||||||
printf "%s\n" "$(xclip -o)" | translate auto $lang | "$($dmenu -p "Press Enter to dismiss.")"
|
|
|
@ -1,54 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
POLLING_FREQUENCY=1
|
|
||||||
|
|
||||||
# ISO 8601
|
|
||||||
alias date="date '+%Y-%m-%dT%T'"
|
|
||||||
|
|
||||||
emit() {
|
|
||||||
printf "[%s] " "$(date)"
|
|
||||||
echo "$@"
|
|
||||||
}
|
|
||||||
get_current_level() {
|
|
||||||
# adapted from other script i wrote, also in the public domain
|
|
||||||
if [ "$(uname)" = "Linux" ]; then
|
|
||||||
# this is a dirty hack.
|
|
||||||
# acpi | awk '{print $4}' will print the battery percentage,
|
|
||||||
# and s/,$// strips the trailing comma.
|
|
||||||
# acpi -a will just print the power adapter status.
|
|
||||||
printf "%b" "$(acpi | awk '{print $4}' | sed 's/,$//')"
|
|
||||||
return 0
|
|
||||||
elif [ "$(uname)" = "NetBSD" ]; then
|
|
||||||
printf "%b" "$(envstat -s acpibat0:charge \
|
|
||||||
| sed 1,2d \
|
|
||||||
| cut -d ':' -f 2 \
|
|
||||||
| awk '{print $1}' \
|
|
||||||
| cut -d '.' -f 1)"
|
|
||||||
return 0
|
|
||||||
else
|
|
||||||
printf "get_battery_status: unsupported OS" >>/dev/stderr
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
! get_current_level >/dev/null \
|
|
||||||
&& printf "Unable to get battery status on this system.\n" >>/dev/stderr \
|
|
||||||
&& exit 1 \
|
|
||||||
|| true
|
|
||||||
|
|
||||||
current_level=$(get_current_level)
|
|
||||||
previous_level=$current_level
|
|
||||||
|
|
||||||
emit "$(printf "Current level: %d%%" "$current_level")"
|
|
||||||
|
|
||||||
while true; do
|
|
||||||
current_level=$(get_current_level)
|
|
||||||
if ! [ $current_level -eq $previous_level ]; then
|
|
||||||
[ $current_level -lt $previous_level ] \
|
|
||||||
&& emit "$(printf "Discharged: %d%% -> %d%%\n" $previous_level $current_level )" \
|
|
||||||
|| emit "$(printf " Charged: %d%% -> %d%%\n" $previous_level $current_level )"
|
|
||||||
previous_level=$current_level
|
|
||||||
fi
|
|
||||||
|
|
||||||
sleep $POLLING_FREQUENCY
|
|
||||||
done
|
|
|
@ -1,211 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
set -e
|
|
||||||
|
|
||||||
# depends on https://git.sr.ht/~trinity/utilities (particularly fdivide(1),
|
|
||||||
# gt(1), and stris(1))
|
|
||||||
# there are issues with the POSIX shell implementations included in this script
|
|
||||||
# and particularly with stris
|
|
||||||
|
|
||||||
# on Linux only:
|
|
||||||
# these files (separated by newlines) will have the current CPU temperature
|
|
||||||
# multiplied by $CPU_TEMP_SCALE. this script divides the file contents by scale
|
|
||||||
# and displays that temperature (assumed to be in Celsius units)
|
|
||||||
CPU_TEMP_FILES="/sys/devices/platform/coretemp.0/hwmon/hwmon4/temp2_input
|
|
||||||
/sys/devices/platform/coretemp.0/hwmon/hwmon4/temp3_input"
|
|
||||||
CPU_TEMP_SCALE=1000
|
|
||||||
|
|
||||||
# format for the date (by default in this script, ISO 8601)
|
|
||||||
alias date="date '+%Y-%m-%dT%T'"
|
|
||||||
|
|
||||||
DELIMITER=" || "
|
|
||||||
|
|
||||||
# how fast to refresh the display (in seconds, will be substituted with 1 if
|
|
||||||
# not an integer)
|
|
||||||
INTERVAL=1
|
|
||||||
|
|
||||||
# enable if you have issues with missing `stris` etc. will save negligible time
|
|
||||||
# with shells that don't spawn new processes for test(1)
|
|
||||||
# fdivide_posix() may not be fully working yet, so it's not enabled by default
|
|
||||||
#POSIXLY_CORRECT=1
|
|
||||||
|
|
||||||
# this URL will have in plain text the public IP address from which it was
|
|
||||||
# accessed
|
|
||||||
#PUBLIC_IP_FETCH_URL="http://ifconfig.io/"
|
|
||||||
#PUBLIC_IP_FETCH_URL="https://ifconfig.io"
|
|
||||||
#PUBLIC_IP_FETCH_URL="http://icanhazip.com"
|
|
||||||
PUBLIC_IP_FETCH_URL="https://icanhazip.com"
|
|
||||||
PUBLIC_IP6_FETCH_URL="$PUBLIC_IP_FETCH_URL"
|
|
||||||
|
|
||||||
get_battery_status() {
|
|
||||||
if [ "$(uname)" = "Linux" ]; then
|
|
||||||
# this is a dirty hack.
|
|
||||||
# acpi | awk '{print $4}' will print the battery percentage,
|
|
||||||
# and s/,$// strips the trailing comma.
|
|
||||||
# acpi -a will just print the power adapter status.
|
|
||||||
printf "%b" "$(acpi | awk '{print $4}' | sed 's/,$//') ($(acpi -a))"
|
|
||||||
return
|
|
||||||
elif [ "$(uname)" = "NetBSD" ]; then
|
|
||||||
printf "%b%%" "$(envstat -s acpibat0:charge \
|
|
||||||
| sed 1,2d \
|
|
||||||
| cut -d ':' -f 2 \
|
|
||||||
| awk '{print $1}' \
|
|
||||||
| cut -d '.' -f 1)"
|
|
||||||
return
|
|
||||||
else
|
|
||||||
printf "get_battery_status: unsupported OS"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
get_cpu_temp() {
|
|
||||||
if [ "$(uname)" = "Linux" ]; then
|
|
||||||
RETVAL=""
|
|
||||||
# iterate over files, adjust, print out "%dC "
|
|
||||||
for file in $CPU_TEMP_FILES;
|
|
||||||
do RETVAL="$RETVAL$(fdivide $(cat $file) $CPU_TEMP_SCALE)C "
|
|
||||||
done
|
|
||||||
# in-line python (bet you've never seen that before) that
|
|
||||||
# strips off trailing whitespace. could be done with sed but
|
|
||||||
# this was more fun
|
|
||||||
printf "%b" "$RETVAL" \
|
|
||||||
| python -c "from sys import stdin; print(stdin.read().rstrip() + '\n')"
|
|
||||||
return
|
|
||||||
elif [ "$(uname)" = "NetBSD" ]; then
|
|
||||||
printf "%bC" "$(envstat -s coretemp0:'cpu0 temperature' \
|
|
||||||
| sed 1,2d \
|
|
||||||
| cut -d ':' -f 2 \
|
|
||||||
| awk '{print $1}' \
|
|
||||||
| cut -d '.' -f 1)"
|
|
||||||
return
|
|
||||||
else
|
|
||||||
printf "get_cpu_temp: unsupported OS"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
get_current_desktop() {
|
|
||||||
case "$WM" in
|
|
||||||
(bspwm) printf "[%b] " "$(bspc query -D -d focused --names)" ;;
|
|
||||||
esac
|
|
||||||
}
|
|
||||||
|
|
||||||
get_memory_usage() {
|
|
||||||
if [ "$(uname)" = "Linux" ]; then
|
|
||||||
printf "%b" \
|
|
||||||
"$(free | head -n 2 | tail -n 1 \
|
|
||||||
| awk '{print $3 " used / " $2 " total"}')"
|
|
||||||
return
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
get_public_ip() {
|
|
||||||
PUBLIC_IP4="$(curl -4 "$PUBLIC_IP_FETCH_URL" --no-progress-meter 2>/dev/null \
|
|
||||||
|| printf "-1")"
|
|
||||||
PUBLIC_IP6="$(curl -6 "$PUBLIC_IP6_FETCH_URL" --no-progress-meter 2>/dev/null \
|
|
||||||
|| printf "-1")"
|
|
||||||
if [ "$PUBLIC_IP4" = "-1" ] && [ "$PUBLIC_IP6" = "-1" ]; then
|
|
||||||
printf "[error fetching address]"
|
|
||||||
elif [ "$PUBLIC_IP4" = "-1" ]; then
|
|
||||||
printf "%b" "$PUBLIC_IP6"
|
|
||||||
elif [ "$PUBLIC_IP6" = "-1" ]; then
|
|
||||||
printf "%b" "$PUBLIC_IP4"
|
|
||||||
else
|
|
||||||
printf "%b / %b" "$PUBLIC_IP4" "$PUBLIC_IP6"
|
|
||||||
fi
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
# slow, so fetch it in advance
|
|
||||||
PUBLIC_IP="$(get_public_ip)"
|
|
||||||
|
|
||||||
printbar() {
|
|
||||||
printf "%b" "$(get_current_desktop)"
|
|
||||||
printf "%b" "$(date)"
|
|
||||||
printf "%b" "$DELIMITER"
|
|
||||||
printf "%b" "BAT: $(get_battery_status)"
|
|
||||||
printf "%b" "$DELIMITER"
|
|
||||||
printf "%b" "CPU: $(get_cpu_temp)"
|
|
||||||
printf "%b" "$DELIMITER"
|
|
||||||
printf "%b" "PuIP: $PUBLIC_IP"
|
|
||||||
#printf "%b" "$DELIMITER"
|
|
||||||
#printf "%b" "MEM: $(get_memory_usage)"
|
|
||||||
printf "\n"
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
###############################################################################
|
|
||||||
# the following is for error prevention and doesn't need to be changed #
|
|
||||||
###############################################################################
|
|
||||||
|
|
||||||
# POSIX shell version of fdivide
|
|
||||||
fdivide_posix() {
|
|
||||||
[ -n "$2" ] && [ -n "$1" ] && [ -z "$3" ] \
|
|
||||||
|| return 1
|
|
||||||
printf "%b\n" "$(($1/$2))"
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
# [ -gt ] with better syntax
|
|
||||||
gt_posix() {
|
|
||||||
while [ -n "$2" ]; do
|
|
||||||
[ "$1" -gt "$2" ] \
|
|
||||||
|| return 1
|
|
||||||
shift 1
|
|
||||||
done
|
|
||||||
return 0
|
|
||||||
}
|
|
||||||
|
|
||||||
# limited POSIX shell version of stris
|
|
||||||
# BROKEN REGEX. MUSTFIX.
|
|
||||||
stris_posix() {
|
|
||||||
[ -n "$2" ] || return 1
|
|
||||||
case "$1" in
|
|
||||||
(int)
|
|
||||||
# https://stackoverflow.com/questions/2210349/test-whether-string-is-a-valid-integer
|
|
||||||
printf "$2" | grep '^-?[0-9]+$' >/dev/null \
|
|
||||||
&& return 0 \
|
|
||||||
|| return 1
|
|
||||||
;;
|
|
||||||
(uint)
|
|
||||||
printf "$2" | grep '^[0-9]+$' >/dev/null \
|
|
||||||
&& return 0 \
|
|
||||||
|| return 1
|
|
||||||
;;
|
|
||||||
(*)
|
|
||||||
return 1
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
# check to make sure we have non-standard utilities
|
|
||||||
|
|
||||||
[ -n "$POSIXLY_CORRECT" ] || ! which fdivide >/dev/null 2>&1 \
|
|
||||||
&& alias fdivide="fdivide_posix" \
|
|
||||||
|| true
|
|
||||||
|
|
||||||
[ -n "$POSIXLY_CORRECT" ] || ! which gt >/dev/null 2>&1 \
|
|
||||||
&& alias gt="gt_posix" \
|
|
||||||
|| true
|
|
||||||
|
|
||||||
[ -n "$POSIXLY_CORRECT" ] || ! which stris >/dev/null 2>&1 \
|
|
||||||
&& alias stris="stris_posix" \
|
|
||||||
|| true
|
|
||||||
|
|
||||||
# check to make sure customizeable vars are in proper format
|
|
||||||
|
|
||||||
[ -n "$INTERVAL" ] && stris int "$INTERVAL" \
|
|
||||||
|| INTERVAL=1
|
|
||||||
|
|
||||||
[ -n "$CPU_TEMP_SCALE" ] && stris int "$CPU_TEMP_SCALE" \
|
|
||||||
&& gt "$CPU_TEMP_SCALE" 0 \
|
|
||||||
|| CPU_TEMP_SCALE=1
|
|
||||||
|
|
||||||
[ -n "$CPU_TEMP_FILES" ] \
|
|
||||||
|| alias get_cpu_temp="printf '[no temperature files specified]\n'"
|
|
||||||
|
|
||||||
# main loop
|
|
||||||
|
|
||||||
while true; do
|
|
||||||
printbar
|
|
||||||
sleep "$INTERVAL"
|
|
||||||
done
|
|
|
@ -1,36 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
set -e
|
|
||||||
|
|
||||||
DEV="/dev"
|
|
||||||
MNT="/mnt"
|
|
||||||
# will not be split when used
|
|
||||||
SUDO="doas"
|
|
||||||
|
|
||||||
# preliminary checks
|
|
||||||
[ -n "$2" ] || [ -z "$1" ] \
|
|
||||||
&& printf "Usage: %b [device in %b/]\n" "$0" "$DEV" >>/dev/stderr \
|
|
||||||
&& exit 1 \
|
|
||||||
|| true
|
|
||||||
|
|
||||||
# no need to priviledge escalate if we're already root
|
|
||||||
! [ "$(id -u)" = 0 ] \
|
|
||||||
|| SUDO=""
|
|
||||||
|
|
||||||
# exhaustive checks to ensure $DEV/$1 exists and that $MNT/$1 can be safely used as a mountpoint
|
|
||||||
! [ -d "$MNT/$1" ] && [ -a "$MNT/$1" ] \
|
|
||||||
&& printf "%b: '%b/%b' already exists, but isn't a directory.\n" "$0" "$MNT" "$1" >>/dev/stderr \
|
|
||||||
&& exit 1 \
|
|
||||||
|| true
|
|
||||||
[ -d "$MNT/$1" ] \
|
|
||||||
|| mkdir "$MNT/$1"
|
|
||||||
! [ "$(ls -A "$MNT/$1" | wc -l | xargs echo)" = 0 ] \
|
|
||||||
&& printf "%b: '%b/%b' is a directory, but isn't empty.\n" "$0" "$MNT" "$1" >>/dev/stderr \
|
|
||||||
&& exit 1 \
|
|
||||||
|| true
|
|
||||||
! [ -e "/dev/$1" ] \
|
|
||||||
&& printf "%b: '%b/%b' doesn't exist.\n" "$0" "$DEV" "$1" >>/dev/stderr \
|
|
||||||
&& exit 1 \
|
|
||||||
|| true
|
|
||||||
|
|
||||||
# ok, we're safe
|
|
||||||
"$SUDO" mount "$DEV/$1" "$MNT/$1"
|
|
|
@ -1,39 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
set -e
|
|
||||||
|
|
||||||
# DistroTube's dm-radio fixed and in POSIX shell
|
|
||||||
|
|
||||||
alias nonzero="test -n"
|
|
||||||
|
|
||||||
nonzero "$MUSIC_PLAYER" || MUSIC_PLAYER=mpv
|
|
||||||
nonzero "$DMENU" || DMENU=dmenu
|
|
||||||
|
|
||||||
# tab delimits name from URL
|
|
||||||
STATIONS="\
|
|
||||||
50s Rewind https://zeno.fm/radio/50s-rewind/
|
|
||||||
60s Rewind https://zeno.fm/radio/60s-rewind/
|
|
||||||
70s Rewind https://zeno.fm/radio/70s-rewind/
|
|
||||||
80s Rewind https://zeno.fm/radio/80s-rewind/
|
|
||||||
90s Rock https://zeno.fm/radio/90s-rock/
|
|
||||||
The 2000s https://zeno.fm/radio/the-2000s/
|
|
||||||
Classical Radio https://zeno.fm/radio/classical-radio/
|
|
||||||
Classical Relaxation https://zeno.fm/radio/radio-christmas-non-stop-classical/
|
|
||||||
Classic Rock https://zeno.fm/radio/classic-rockdnb2sav8qs8uv/
|
|
||||||
Gangsta49 https://zeno.fm/radio/gangsta49/
|
|
||||||
HipHop49 https://zeno.fm/radio/hiphop49/
|
|
||||||
Madhouse Country Radio https://zeno.fm/radio/madhouse-country-radio/
|
|
||||||
PopMusic https://zeno.fm/radio/popmusic74vyurvmug0uv/
|
|
||||||
PopStars https://zeno.fm/radio/popstars/
|
|
||||||
RadioMetal https://zeno.fm/radio/radio-metal/
|
|
||||||
RocknRoll Radio https://zeno.fm/radio/rocknroll-radio994c7517qs8uv/
|
|
||||||
Cancel nop://
|
|
||||||
"
|
|
||||||
|
|
||||||
selection="$(printf "%s\n" "$STATIONS" | grep -F "$(printf "%s\n" "$STATIONS" | cut -f 1 | dmenu) ")"
|
|
||||||
|
|
||||||
if [ "$selection" = "Cancel nop://" ]
|
|
||||||
then exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
pkill -f http || printf "%s: mpv not running.\n" "$0" 1>&2
|
|
||||||
printf "%s\n" "$selection" | cut -f 2 | xargs mpv
|
|
|
@ -1,33 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
set -e
|
|
||||||
|
|
||||||
ROTATION_FILE="$HOME/.rotation"
|
|
||||||
SCREEN="$1"
|
|
||||||
|
|
||||||
_core(){
|
|
||||||
case "$1" in
|
|
||||||
1) xrandr --output "$SCREEN" --rotate normal ;;
|
|
||||||
2) xrandr --output "$SCREEN" --rotate left ;;
|
|
||||||
3) xrandr --output "$SCREEN" --rotate inverted ;;
|
|
||||||
4) xrandr --output "$SCREEN" --rotate right ;;
|
|
||||||
*) return 1
|
|
||||||
esac
|
|
||||||
return 0
|
|
||||||
}
|
|
||||||
|
|
||||||
if [ -e "$ROTATION_FILE" ]
|
|
||||||
then ROTATION="$(dd <"$ROTATION_FILE" 2>/dev/null)"
|
|
||||||
if ! _core "$ROTATION"
|
|
||||||
then _core 1
|
|
||||||
ROTATION=2
|
|
||||||
else ROTATION=$(printf "%s + 1\n" "$ROTATION" | bc)
|
|
||||||
! [ "$ROTATION" -gt 4 ] \
|
|
||||||
|| ROTATION=1
|
|
||||||
fi
|
|
||||||
else _core 1
|
|
||||||
ROTATION=2
|
|
||||||
fi
|
|
||||||
|
|
||||||
printf "%s\n" "$ROTATION" >"$ROTATION_FILE"
|
|
||||||
|
|
||||||
exit 0
|
|
|
@ -1,12 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
argv0="$0"
|
|
||||||
usage(){
|
|
||||||
printf "Usage: %s (un) [XRandR output]\n" "$argv0" 1>&2
|
|
||||||
exit 64 # sysexits(3) EX_USAGE
|
|
||||||
}
|
|
||||||
if [ -n "$2" ] && [ "$1" = un ]
|
|
||||||
then xrandr --output "$2" --transform none
|
|
||||||
elif [ -n "$1" ]
|
|
||||||
then "$DISPLAYM_CONFIG/xrandr_transform.sh" "$1"
|
|
||||||
else usage
|
|
||||||
fi
|
|
|
@ -1,85 +0,0 @@
|
||||||
#!/usr/bin/env python3
|
|
||||||
|
|
||||||
# googletrans comes with a translate(1) command line application but I don't
|
|
||||||
# like its UI.
|
|
||||||
|
|
||||||
import sys;
|
|
||||||
|
|
||||||
stdin = sys.stdin;
|
|
||||||
stdout = sys.stdout;
|
|
||||||
stderr = sys.stderr;
|
|
||||||
|
|
||||||
_exit = exit;
|
|
||||||
exit = sys.exit;
|
|
||||||
|
|
||||||
def printf(s, *args):
|
|
||||||
return fprintf(stdout, s, *args);
|
|
||||||
|
|
||||||
def fprintf(f, s, *args):
|
|
||||||
printing = s if len(args) == 0 else (s % args);
|
|
||||||
return f.write(printing);
|
|
||||||
|
|
||||||
try:
|
|
||||||
import googletrans;
|
|
||||||
except:
|
|
||||||
printf(
|
|
||||||
"%s: This Python script requires the \"googletrans\" library.\n",
|
|
||||||
sys.argv[0]
|
|
||||||
);
|
|
||||||
|
|
||||||
def usage(name):
|
|
||||||
fprintf(
|
|
||||||
stderr, "Usage: %s [source language] [destination language]\n",
|
|
||||||
name
|
|
||||||
);
|
|
||||||
exit(1);
|
|
||||||
|
|
||||||
def main(argc, argv):
|
|
||||||
accepted_languages = set(list(googletrans.LANGCODES)
|
|
||||||
+ list(googletrans.LANGUAGES) + [ "auto" ]);
|
|
||||||
good = True;
|
|
||||||
isatty = stdout.isatty();
|
|
||||||
translator = googletrans.Translator();
|
|
||||||
|
|
||||||
if argc != 3:
|
|
||||||
usage(argv[0]);
|
|
||||||
|
|
||||||
src = argv[1].lower();
|
|
||||||
dest = argv[2].lower();
|
|
||||||
for arg in [ src, dest ]:
|
|
||||||
if not(arg in accepted_languages):
|
|
||||||
good = False;
|
|
||||||
fprintf(stderr,
|
|
||||||
"%s: %s: Language not recognized.\n",
|
|
||||||
argv[0], arg);
|
|
||||||
if(not(good)):
|
|
||||||
fprintf(stderr, "The following languages and language codes are"
|
|
||||||
+ " recognized:\n");
|
|
||||||
print(googletrans.LANGCODES);
|
|
||||||
exit(1);
|
|
||||||
|
|
||||||
try:
|
|
||||||
text = stdin.read().split('\n')[:-1]
|
|
||||||
except KeyboardInterrupt:
|
|
||||||
fprintf(stderr, "%s: Cancelled (keyboard interrupt).\n", argv[0]);
|
|
||||||
exit(1);
|
|
||||||
for line in text:
|
|
||||||
try:
|
|
||||||
translation = translator.translate(line, src=src, dest=dest);
|
|
||||||
except:
|
|
||||||
fprintf(stderr, "%s: %s ->%s\n\t%s\n",
|
|
||||||
argv[0], line, dest, "Error trying to translate.");
|
|
||||||
if isatty:
|
|
||||||
fprintf(stdout,
|
|
||||||
"%s -> %s\n"
|
|
||||||
+ "\t%s -> %s\n"
|
|
||||||
+ "\tGiven pronunciation: %s\n",
|
|
||||||
translation.origin, translation.text,
|
|
||||||
translation.src, translation.dest,
|
|
||||||
translation.pronunciation
|
|
||||||
);
|
|
||||||
else:
|
|
||||||
fprintf(stdout, "%s\n", translation.text);
|
|
||||||
return 0;
|
|
||||||
|
|
||||||
exit(main(len(sys.argv), sys.argv));
|
|
|
@ -1,146 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
argv0="$0"
|
|
||||||
|
|
||||||
# ADDING A NEW SOUND SERVER/CLIENT/WHATEVERIDK
|
|
||||||
# `volume a` and `volume s` are the system dependent functions.
|
|
||||||
|
|
||||||
# `volume a $2` must set the volume to $2, an integer value. This should be a
|
|
||||||
# percentage, 100% being the loudest possible volume that can be output by
|
|
||||||
# hardware without quality loss. Percentages above 100% will be allowable in
|
|
||||||
# software if using percentage units. If percentage units are implausible to
|
|
||||||
# implement, system units are okay (e.g. 0-$arbitrary scale versus 0-100).
|
|
||||||
|
|
||||||
# `volume s` must output the current volume in integer form in whatever units
|
|
||||||
# are being used by `volume a` on the given system.
|
|
||||||
|
|
||||||
! command -v stris >/dev/null 2>/dev/null \
|
|
||||||
&& printf "%b: Missing stris.\n" "$argv0" \
|
|
||||||
&& exit 1 \
|
|
||||||
|| true
|
|
||||||
|
|
||||||
VOLUME_TMP_FILE="$HOME/.volume-previous"
|
|
||||||
|
|
||||||
unknown_system(){
|
|
||||||
printf "%s: Unknown system.\n" "$argv0" 1>&2
|
|
||||||
exit 1
|
|
||||||
}
|
|
||||||
|
|
||||||
usage(){
|
|
||||||
printf "\
|
|
||||||
Usage: %b {function} (operand)\n" "$argv0"
|
|
||||||
printf "\
|
|
||||||
Functions:
|
|
||||||
'+' - shortcut to \"relative \$2\"
|
|
||||||
'-' - shortcut to \"relative -\$2\"
|
|
||||||
absolute - change sound output to absolute unit
|
|
||||||
help,'' - print this help output
|
|
||||||
mute - toggle mute/unmute
|
|
||||||
relative - change sound output relative to current status
|
|
||||||
status - print current sound output in system unit \
|
|
||||||
"
|
|
||||||
printf "\
|
|
||||||
The options are matched with [char]*. So \"%b help\"
|
|
||||||
works the same as \"%b h\".
|
|
||||||
|
|
||||||
" "$argv0" "$argv0"
|
|
||||||
exit 1
|
|
||||||
}
|
|
||||||
|
|
||||||
# $1 becomes 'help' if previously empty
|
|
||||||
[ -n "$1" ] \
|
|
||||||
&& argv1="$1" \
|
|
||||||
|| argv1=help
|
|
||||||
|
|
||||||
case "$argv1" in
|
|
||||||
#
|
|
||||||
# SYSTEM DEPENDENT
|
|
||||||
#
|
|
||||||
(a*)
|
|
||||||
[ -n "$2" ] && [ -z "$3" ] && stris int "$2" || usage
|
|
||||||
|
|
||||||
if [ "$(uname)" = "NetBSD" ]; then
|
|
||||||
# NetBSD 9.2 STABLE 2021-07
|
|
||||||
audioctl -w play.gain=$2 >/dev/null
|
|
||||||
|
|
||||||
elif command -v pactl >/dev/null; then
|
|
||||||
# pactl 15.0 compiled+linked with libpulse 15.0.0
|
|
||||||
pactl set-sink-volume @DEFAULT_SINK@ $2%
|
|
||||||
|
|
||||||
else unknown_system; fi
|
|
||||||
exit 0 ;;
|
|
||||||
(s*)
|
|
||||||
[ -z "$2" ] || usage
|
|
||||||
|
|
||||||
if [ "$(uname)" = "NetBSD" ]; then
|
|
||||||
# hacky
|
|
||||||
audioctl -a \
|
|
||||||
| grep "play\.gain" \
|
|
||||||
| cut -d '=' -f 2
|
|
||||||
|
|
||||||
elif command -v pactl >/dev/null; then
|
|
||||||
# really hacky, gets the job done
|
|
||||||
# gets the volume % of Lchan specifically
|
|
||||||
pactl get-sink-volume @DEFAULT_SINK@ \
|
|
||||||
| sed q \
|
|
||||||
| cut -d '/' -f 2 \
|
|
||||||
| xargs echo \
|
|
||||||
| sed s/'%'//
|
|
||||||
|
|
||||||
else unknown_system; fi
|
|
||||||
exit 0 ;;
|
|
||||||
#
|
|
||||||
# SYSTEM independent
|
|
||||||
#
|
|
||||||
(+)
|
|
||||||
[ -n "$2" ] && [ -z "$3" ] && stris uint "$2" \
|
|
||||||
&& "$argv0" r "$2" \
|
|
||||||
|| usage
|
|
||||||
;;
|
|
||||||
(-)
|
|
||||||
[ -n "$2" ] && [ -z "$3" ] && stris uint "$2" \
|
|
||||||
&& "$argv0" r -"$2" \
|
|
||||||
|| usage
|
|
||||||
;;
|
|
||||||
(m*)
|
|
||||||
[ -z "$2" ] || usage
|
|
||||||
# restore previous volume if there is one
|
|
||||||
if [ -e "$VOLUME_TMP_FILE" ]; then
|
|
||||||
"$argv0" a "$(cat "$VOLUME_TMP_FILE")" \
|
|
||||||
&& rm "$VOLUME_TMP_FILE" \
|
|
||||||
&& printf "Unmuted.\n" \
|
|
||||||
&& exit 0 \
|
|
||||||
|| printf "Error restoring previous volume.\n" \
|
|
||||||
>/dev/stderr \
|
|
||||||
&& exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# otherwise, make new file with previous volume
|
|
||||||
|
|
||||||
# dd used rather than shell redirect so it's easy to determine
|
|
||||||
# whether or not the file write worked
|
|
||||||
if ! printf "%b" "$("$argv0" s)" \
|
|
||||||
| dd >"$VOLUME_TMP_FILE" 2>/dev/null
|
|
||||||
then
|
|
||||||
printf "Error writing to file.\n" >/dev/stderr
|
|
||||||
false
|
|
||||||
fi
|
|
||||||
|
|
||||||
# and then of course mute
|
|
||||||
"$argv0" a 0
|
|
||||||
printf "Muted.\n"
|
|
||||||
|
|
||||||
exit 0 ;;
|
|
||||||
(r*)
|
|
||||||
[ -n "$2" ] && [ -z "$3" ] && stris int "$2" \
|
|
||||||
|| usage
|
|
||||||
|
|
||||||
if ! newval=$(add $("$argv0" s) $2) || ! stris int "$newval"; then
|
|
||||||
printf "%b: Error finding new value for volume.\n" "$argv0"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
"$argv0" a $newval
|
|
||||||
exit $? ;;
|
|
||||||
(h*) usage ;;
|
|
||||||
(*) usage ;;
|
|
||||||
esac
|
|
|
@ -1,24 +0,0 @@
|
||||||
#!/bin/sh -e
|
|
||||||
alias cp="$(which cp)"
|
|
||||||
SRC="$HOME"
|
|
||||||
DEST="$(pwd)"
|
|
||||||
[ "$(printf "Abort.\nContinue.\n" | dmenu -p "Copying from '$SRC' to '$DEST'. Continue?")" = "Continue." ] || exit
|
|
||||||
set -x
|
|
||||||
|
|
||||||
for dir in $(cat manifest_dir); do
|
|
||||||
if ! [ -d "$SRC/$dir" ]; then
|
|
||||||
printf "Directory missing from SRC: %b\n" "$dir"
|
|
||||||
false
|
|
||||||
else
|
|
||||||
mkdir -p "$DEST/$dir"
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
for file in $(cat manifest_file); do
|
|
||||||
if ! [ -e "$SRC/$file" ]; then
|
|
||||||
printf "File missing from SRC: %b\n" "$file"
|
|
||||||
false
|
|
||||||
else
|
|
||||||
cp "$SRC/$file" "$DEST/$file"
|
|
||||||
fi
|
|
||||||
done
|
|
|
@ -1,42 +0,0 @@
|
||||||
On modern Linux systems most people use ALSA and PulseAudio for sound.
|
|
||||||
This tends to work fine. This isn't always how it's been done but it's
|
|
||||||
how it's done now.
|
|
||||||
|
|
||||||
I'm not an expert on Linux audio and I'm not gonna explain how this all
|
|
||||||
works because I don't know myself. However I've noticed a lot of guides
|
|
||||||
just gloss over what seem to be important parts of setup, so here it is.
|
|
||||||
|
|
||||||
This is also a living document and low quality.
|
|
||||||
|
|
||||||
Alpine Wiki says as of 2021-05-19 you'll need:
|
|
||||||
|
|
||||||
alsa-utils alsa-utils-doc alsa-lib alsaconf
|
|
||||||
|
|
||||||
Alpine splits documentation into their own packages from programs.
|
|
||||||
|
|
||||||
Alpine also says to add all system users including root to the audio group.
|
|
||||||
|
|
||||||
On Busybox systems this is `addgroup $USER audio`.
|
|
||||||
On GNU this is `usermod -aG audio $USER`.
|
|
||||||
|
|
||||||
Alpine Wiki tells you to use `alsamixer` to find the ID number of your card
|
|
||||||
in F6 menu and then change defaults.ctl.card and defaults.pcm.card in
|
|
||||||
/usr/share/alsa/alsa.conf but mine was already the default.
|
|
||||||
|
|
||||||
You need to also add and start the alsa service:
|
|
||||||
rc-service alsa start
|
|
||||||
rc-update add alsa
|
|
||||||
|
|
||||||
It looks like I installed gstreamer too.
|
|
||||||
|
|
||||||
Now you need pulseaudio. Here's how to do that according to Alpine Wiki, add:
|
|
||||||
|
|
||||||
pulseaudio pulseaudio-alsa alsa-plugins-pulse
|
|
||||||
|
|
||||||
Make sure you set pulseaudio to start when you need audio.
|
|
||||||
It freaks out at you if you try to set it systemwide.
|
|
||||||
|
|
||||||
I do this in my bspwmrc for bspwm (and .config/i3/config for i3wm) but
|
|
||||||
I've heard this is an awful idea so ask your local user-group.
|
|
||||||
|
|
||||||
2021-06-04: This works on artix-openrc.
|
|
|
@ -1,32 +0,0 @@
|
||||||
2021-06-04
|
|
||||||
Had an issue with pacman missing some ubiquitous packages (esr's `ascii`, xorg-xev, etc).
|
|
||||||
This fixed it. I don't really know why - maybe some issues with my repos?
|
|
||||||
This was cleanly installed artix-openrc.
|
|
||||||
|
|
||||||
[5:46 PM] Bassman Leyla: So what I did is I went into /etc/pacman.d/mirrorlist-arch and uncommented a local mirror
|
|
||||||
[5:46 PM] Bassman Leyla: Then I appended a config block a package maintainer gave me onto /etc/pacman.conf
|
|
||||||
[5:46 PM] Bassman Leyla: I'll paste it in
|
|
||||||
[5:47 PM] Bassman Leyla:
|
|
||||||
```
|
|
||||||
#
|
|
||||||
# ARCHLINUX
|
|
||||||
#
|
|
||||||
|
|
||||||
#[testing]
|
|
||||||
#Include = /etc/pacman.d/mirrorlist-arch
|
|
||||||
|
|
||||||
[extra]
|
|
||||||
Include = /etc/pacman.d/mirrorlist-arch
|
|
||||||
|
|
||||||
#[community-testing]
|
|
||||||
#Include = /etc/pacman.d/mirrorlist-arch
|
|
||||||
|
|
||||||
[community]
|
|
||||||
Include = /etc/pacman.d/mirrorlist-arch
|
|
||||||
|
|
||||||
#[multilib-testing]
|
|
||||||
#Include = /etc/pacman.d/mirrorlist-arch
|
|
||||||
|
|
||||||
#[multilib]
|
|
||||||
#Include = /etc/pacman.d/mirrorlist-arch
|
|
||||||
```
|
|
|
@ -1,30 +0,0 @@
|
||||||
MIT/X Consortium License
|
|
||||||
|
|
||||||
© 2006-2019 Anselm R Garbe <anselm@garbe.ca>
|
|
||||||
© 2006-2008 Sander van Dijk <a.h.vandijk@gmail.com>
|
|
||||||
© 2006-2007 Michał Janeczek <janeczek@gmail.com>
|
|
||||||
© 2007 Kris Maglione <jg@suckless.org>
|
|
||||||
© 2009 Gottox <gottox@s01.de>
|
|
||||||
© 2009 Markus Schnalke <meillo@marmaro.de>
|
|
||||||
© 2009 Evan Gates <evan.gates@gmail.com>
|
|
||||||
© 2010-2012 Connor Lane Smith <cls@lubutu.com>
|
|
||||||
© 2014-2020 Hiltjo Posthuma <hiltjo@codemadness.org>
|
|
||||||
© 2015-2019 Quentin Rameau <quinq@fifth.space>
|
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a
|
|
||||||
copy of this software and associated documentation files (the "Software"),
|
|
||||||
to deal in the Software without restriction, including without limitation
|
|
||||||
the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
|
||||||
and/or sell copies of the Software, and to permit persons to whom the
|
|
||||||
Software is furnished to do so, subject to the following conditions:
|
|
||||||
|
|
||||||
The above copyright notice and this permission notice shall be included in
|
|
||||||
all copies or substantial portions of the Software.
|
|
||||||
|
|
||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
||||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
||||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
|
||||||
THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
||||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
||||||
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
|
||||||
DEALINGS IN THE SOFTWARE.
|
|
|
@ -1,13 +0,0 @@
|
||||||
.config/
|
|
||||||
.config/bspwm/
|
|
||||||
.config/displaym/
|
|
||||||
.config/displaym/bspwm
|
|
||||||
.config/displaym/ctwm
|
|
||||||
.config/displaym/i3wm
|
|
||||||
.config/i3/
|
|
||||||
.config/i3status/
|
|
||||||
.config/sxhkd/
|
|
||||||
.config/sxhkd/
|
|
||||||
.config/sxhkd/
|
|
||||||
bin/
|
|
||||||
src/dmenu/
|
|
|
@ -1,24 +0,0 @@
|
||||||
.Xresources
|
|
||||||
.aliases
|
|
||||||
.ctwmrc
|
|
||||||
.env
|
|
||||||
.profile
|
|
||||||
.vimrc
|
|
||||||
.config/bspwm/bspwmrc
|
|
||||||
.config/displaym/.xinitrc
|
|
||||||
.config/displaym/sxhkdrc
|
|
||||||
.config/displaym/bspwm/.xinitrc
|
|
||||||
.config/displaym/bspwm/start.sh
|
|
||||||
.config/displaym/bspwm/sxhkdrc
|
|
||||||
.config/displaym/ctwm/.xinitrc
|
|
||||||
.config/displaym/ctwm/start.sh
|
|
||||||
.config/displaym/i3wm/.xinitrc
|
|
||||||
.config/displaym/i3wm/sxhkdrc
|
|
||||||
.config/i3/config
|
|
||||||
.config/i3status/config
|
|
||||||
bin/batterymonitor
|
|
||||||
bin/data
|
|
||||||
bin/displaym
|
|
||||||
bin/mnt
|
|
||||||
bin/volume
|
|
||||||
src/dmenu/config.h
|
|
|
@ -1,17 +0,0 @@
|
||||||
# Maintainer: deven <trinity at trinitydotmoe>
|
|
||||||
# VERY LIGHTLY modified version of the AUR package opendoas-sudo
|
|
||||||
pkgname=doas-sudo
|
|
||||||
pkgver=1
|
|
||||||
pkgrel=1
|
|
||||||
pkgdesc="A symlink for using the port of BSD's doas(1) as a drop-in replacement to sudo"
|
|
||||||
arch=('any')
|
|
||||||
url="https://github.com/slicer69/doas"
|
|
||||||
license=('MIT')
|
|
||||||
depends=('doas')
|
|
||||||
provides=('sudo')
|
|
||||||
conflicts=('sudo')
|
|
||||||
|
|
||||||
package() {
|
|
||||||
install -d "$pkgdir"/usr/bin
|
|
||||||
ln -s $(which doas) "$pkgdir"/usr/bin/sudo
|
|
||||||
}
|
|
|
@ -1,38 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
|
|
||||||
set -e
|
|
||||||
|
|
||||||
# dotfiles/scripts
|
|
||||||
# Basic scripts to rebuild a system.
|
|
||||||
# Usage:
|
|
||||||
# bash README.txt arch
|
|
||||||
|
|
||||||
# packages/bootstrap - bare minimum programs. Necessary for system use.
|
|
||||||
# Install these before running this script.
|
|
||||||
|
|
||||||
mkdir -p $HOME/bin # executables
|
|
||||||
mkdir -p $HOME/src # source code
|
|
||||||
|
|
||||||
if [ $1 = "arch" ]; then
|
|
||||||
sudo pacman -S $(cat packages/all packages/*arch_pacman*)
|
|
||||||
|
|
||||||
bash arch_yay.sh
|
|
||||||
yay -S $(cat packages/*arch_yay*)
|
|
||||||
|
|
||||||
bash doas-sudo.sh arch
|
|
||||||
# you can undo this with pacman -S sudo
|
|
||||||
|
|
||||||
elif [ $1 = "artix" ]; then
|
|
||||||
sudo pacman -S $(cat packages/all packages/*artix_pacman*)
|
|
||||||
|
|
||||||
bash arch_yay.sh
|
|
||||||
yay -S $(cat packages/*artix_yay*)
|
|
||||||
|
|
||||||
bash doas-sudo.sh arch
|
|
||||||
# you can undo this with pacman -S sudo
|
|
||||||
|
|
||||||
elif [ $1 = "debian" ]; then
|
|
||||||
|
|
||||||
fi
|
|
||||||
|
|
||||||
bash dotfiles.sh
|
|
|
@ -1,13 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
|
|
||||||
set -e
|
|
||||||
source ./cdecho.sh
|
|
||||||
|
|
||||||
YAYURL="https://aur.archlinux.org/yay.git"
|
|
||||||
|
|
||||||
cde $HOME/src
|
|
||||||
git clone $YAYURL || printf "yay already downloaded\n"
|
|
||||||
cde yay
|
|
||||||
git pull
|
|
||||||
makepkg -si
|
|
||||||
yay -V
|
|
|
@ -1,15 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
set -e
|
|
||||||
|
|
||||||
CC="$(which cc)"
|
|
||||||
|
|
||||||
which tcc >/dev/null
|
|
||||||
|
|
||||||
if [ -h "$CC" ]; then
|
|
||||||
unlink "$CC"
|
|
||||||
ln -s "$(which tcc)" "$CC"
|
|
||||||
else
|
|
||||||
printf "$0: \$(which cc), $(which cc), is not a symbolic link\n" >/dev/stderr
|
|
||||||
exit 1
|
|
||||||
fi
|
|
|
@ -1,4 +0,0 @@
|
||||||
cde() {
|
|
||||||
cd $1
|
|
||||||
printf "Entered %s.\n" $(pwd)
|
|
||||||
}
|
|
|
@ -1,18 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
set -ex
|
|
||||||
|
|
||||||
which sh >/dev/null 2>&1 \
|
|
||||||
|| exit 1
|
|
||||||
|
|
||||||
SH_LOCATION="$(which sh)"
|
|
||||||
|
|
||||||
[ -L "$SH_LOCATION" ] \
|
|
||||||
|| exit 1
|
|
||||||
|
|
||||||
which dash >/dev/null 2>&1 \
|
|
||||||
|| exit 1
|
|
||||||
|
|
||||||
unlink "$SH_LOCATION"
|
|
||||||
|
|
||||||
ln -s "$(which dash)" "$SH_LOCATION"
|
|
|
@ -1,12 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
|
|
||||||
set -e
|
|
||||||
source ./cdecho.sh
|
|
||||||
|
|
||||||
if [ $1 = "arch" ]; then
|
|
||||||
mkdir -p $HOME/src/doas-sudo
|
|
||||||
cp PKGBUILD_doas-sudo $HOME/src/doas-sudo/PKGBUILD
|
|
||||||
|
|
||||||
cde $HOME/src/doas-sudo
|
|
||||||
makepkg -si
|
|
||||||
fi
|
|
|
@ -1,45 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
|
|
||||||
# could be more succinct in places but it works
|
|
||||||
|
|
||||||
source ./cdecho.sh
|
|
||||||
|
|
||||||
# retrieve dotfiles
|
|
||||||
cde $HOME/src
|
|
||||||
git clone https://github.com/devenblake/dotfiles.git
|
|
||||||
cde dotfiles
|
|
||||||
|
|
||||||
# unscii
|
|
||||||
curl http://pelulamu.net/unscii/unscii-16-full.ttf -o $HOME/.local/share/fonts/unscii-16-full.ttf
|
|
||||||
fc-cache
|
|
||||||
|
|
||||||
# basic configs
|
|
||||||
cp {.Xresources,.aliases,.bashrc,.profile} $HOME/
|
|
||||||
ln -s $HOME/.Xresources $HOME/.Xdefaults
|
|
||||||
|
|
||||||
# dmenu
|
|
||||||
cde $HOME/src
|
|
||||||
if [ git clone https://git.suckless.org/dmenu ]; then
|
|
||||||
cde dmenu
|
|
||||||
cp $HOME/dotfiles/src/dmenu/config.h ./
|
|
||||||
make
|
|
||||||
[ "Yes." = $(printf "No.\nYes." | ./dmenu -p "Install dmenu?") ] && sudo make install
|
|
||||||
fi
|
|
||||||
|
|
||||||
# i3wm
|
|
||||||
mkdir -p $HOME/.config/i3
|
|
||||||
mkdir $HOME/.config/i3status
|
|
||||||
cde $HOME/.config/
|
|
||||||
cp $HOME/src/dotfiles/.config/i3/config i3/
|
|
||||||
cp $HOME/src/dotfiles/.config/i3status/config i3status/
|
|
||||||
|
|
||||||
# winamp skin (checks to see if audacious is installed first)
|
|
||||||
sudo mkdir -p /usr/share/audacious/Skins/
|
|
||||||
which audacious && sudo curl https://archive.org/download/winampskin_Sailor_Moon_Gang/Sailor_Moon_Gang.wsz -o /usr/share/audacious/Skins/Sailor_Moon_Gang.wsz || printf "[ERROR] Could not curl audacious skin.\n"
|
|
||||||
|
|
||||||
# wallpaper
|
|
||||||
cde $HOME
|
|
||||||
mkdir -p $HOME/Pictures/Wallpapers
|
|
||||||
curl https://ia801502.us.archive.org/3/items/asuka-98/Asuka%2098.jpg -o Pictures/Wallpapers/Asuka\ 98.jpg || printf "[ERROR] Could not curl wallpaper.\n"
|
|
||||||
|
|
||||||
xrdb -load .Xresources
|
|
|
@ -1,9 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
SIC_C=$HOME/src/sic/sic.c
|
|
||||||
cp "$SIC_C" ./
|
|
||||||
|
|
||||||
sed -e 's/No channel to send to/No channel to which to send./' -e '170s/sic/dsic/' <sic.c >dsic.c
|
|
||||||
|
|
||||||
diff sic.c dsic.c
|
|
||||||
[ "$(printf "No.\nYes.\n" | dmenu -p "Write changes?")" = "Yes." ] && mv "$SIC_C" "$SIC_C".bak && mv dsic.c "$SIC_C"
|
|
|
@ -1,31 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
# icon fetcher
|
|
||||||
# i made this script to fetch icons for my grandmother and put them in icons/
|
|
||||||
# so i wouldn't have to fetch the icons for her desktop when i made her a new
|
|
||||||
# system.
|
|
||||||
# i could have downloaded all the icons and put them into a repo for her but
|
|
||||||
# this uses less space
|
|
||||||
|
|
||||||
# all these icons are on the internet archive so if the local sites change
|
|
||||||
# they'll still be available
|
|
||||||
|
|
||||||
icons_folder="~/Pictures/icons/"
|
|
||||||
|
|
||||||
! which curl && printf "$0: missing dependency: curl\n" >/dev/stderr && exit 1
|
|
||||||
|
|
||||||
mkdir -p "$icons_folder"
|
|
||||||
cd "$icons_folder"
|
|
||||||
|
|
||||||
curl -o "989wclz.com.png" "https://web.archive.org/web/20200629174002if_/https://989wclz.com/wp-content/themes/wclz/img/touch-icon-144.png"
|
|
||||||
curl -o "amazon.com.ico" "https://web.archive.org/web/20200718050400if_/https://www.amazon.com/favicon.ico"
|
|
||||||
curl -o "bangordailynews.com.png" "http://web.archive.org/web/20200721195123if_/https://i0.wp.com/bdn-data.s3.amazonaws.com/uploads/2020/06/BDN-logo_green-3-1.png"
|
|
||||||
curl -o "theguardian.com.png" "https://web.archive.org/web/20200720041457if_/https://assets.guim.co.uk/images/favicons/fee5e2d638d1c35f6d501fa397e53329/152x152.png"
|
|
||||||
curl -o "centralmaine.com.png" "https://web.archive.org/web/20200720023956if_/https://multifiles.pressherald.com/uploads/sites/2/2014/06/apple-touch-icon-iphone-retina-display.png"
|
|
||||||
curl -o "dictionary.com.png" "https://web.archive.org/web/20200719135458if_/https://www.dictionary.com/hp-assets/dcom_favicon-1bff2f1b49c077ed504e55c3649f2a4b.png"
|
|
||||||
curl -o "google.com.jpg" "https://web.archive.org/web/20170621105937if_/https://yt3.ggpht.com/-v0soe-ievYE/AAAAAAAAAAI/AAAAAAAAAAA/OixOH_h84Po/s900-c-k-no/photo.jpg"
|
|
||||||
curl -o "longfellowsgreenhouses.com.jpg" "https://web.archive.org/web/20200718173559im_/https://longfellowsgreenhouses.com/wp-content/uploads/2020/03/Longfellows-Logo-Light-Green.jpg"
|
|
||||||
curl -o "mainepublic.org.png" "https://d3kle7qwymxpcy.cloudfront.net/images/broadcasts/e5/8e/30457/1/c300.png"
|
|
||||||
curl -o "news.google.com.png" "https://upload.wikimedia.org/wikipedia/commons/0/0b/Google_News_icon.png"
|
|
||||||
curl -o "newscentermaine.com.png" "https://web.archive.org/web/20200721190548if_/https://www.newscentermaine.com/assets/favicons/WCSH.png?ver=2.4.7.4"
|
|
||||||
curl -o "pressherald.com.png" "https://multifiles.pressherald.com/uploads/sites/4/2014/06/apple-touch-icon-iphone-retina-display.png"
|
|
||||||
curl -o "weather.com.png" "https://upload.wikimedia.org/wikipedia/commons/thumb/7/77/The_Weather_Channel_logo_2005-present.svg/1200px-The_Weather_Channel_logo_2005-present.svg.png"
|
|
|
@ -1,38 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
set -e
|
|
||||||
|
|
||||||
argv0="$0"
|
|
||||||
argv1="$1"
|
|
||||||
argv2="$2"
|
|
||||||
|
|
||||||
FILE_NAME="image.img.gz"
|
|
||||||
COMPACT="gzip -c"
|
|
||||||
EXTRACT="gzip -cd"
|
|
||||||
|
|
||||||
usage() {
|
|
||||||
printf "Usage: $argv0 {save,deploy} [device]
|
|
||||||
|
|
||||||
Examples:
|
|
||||||
$argv0 save /dev/sda1 # images installation at /dev/sda1
|
|
||||||
$argv0 deploy /dev/sda # deploys saved image to /dev/sda
|
|
||||||
|
|
||||||
In-program constants (edit this script to change them):
|
|
||||||
\$FILE_NAME - where to save/read the image
|
|
||||||
\$COMPACT - command to compact the image (such as \"gzip -c\" to
|
|
||||||
compress with gzip)
|
|
||||||
\$EXTRACT - command to extract the image (such as \"gzip -cd\" to
|
|
||||||
extract gzip)\n"
|
|
||||||
exit 1
|
|
||||||
}
|
|
||||||
|
|
||||||
[ -n "$argv2" ] || usage
|
|
||||||
|
|
||||||
set -x
|
|
||||||
|
|
||||||
case "$argv1" in
|
|
||||||
(save) $COMPACT <"$argv2" >"$FILE_NAME" ;;
|
|
||||||
(deploy) $EXTRACT <"$FILE_NAME" >"$argv2" ;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
exit 0
|
|
|
@ -1,8 +0,0 @@
|
||||||
Welcome to Trinity's Thinkpad X200T.
|
|
||||||
|
|
||||||
Unauthorized access is a violation of
|
|
||||||
United States federal law according to
|
|
||||||
the Computer Fraud and Abuse Act, 18
|
|
||||||
USC Section 1030.
|
|
||||||
|
|
||||||
Mess with the best, die like the rest.
|
|
|
@ -1,30 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
# builds and installs nmap 7.80 because the fucking pieces of shit that
|
|
||||||
# maintain nmap decided to make 7.90+ NONFREE.
|
|
||||||
# i do like nmap and i have nothing personal against the actual maintainers.
|
|
||||||
# but come ON.
|
|
||||||
|
|
||||||
# anyway...
|
|
||||||
|
|
||||||
set -e
|
|
||||||
|
|
||||||
FILENAME="nmap-7.80.tar.bz2"
|
|
||||||
ORIGINAL_DIST_BZ2="https://nmap.org/dist/nmap-7.80.tar.bz2"
|
|
||||||
ARCHIVED_DIST_BZ2="http://web.archive.org/web/20200922062002/https://nmap.org/dist/nmap-7.80.tar.bz2"
|
|
||||||
|
|
||||||
cd $HOME/src
|
|
||||||
|
|
||||||
curl "$ORIGINAL_DIST_BZ2" >"$FILENAME" || curl "$ARCHIVED_DIST_BZ2" >"$FILENAME"
|
|
||||||
|
|
||||||
bzip2 -cd <"$FILENAME" | tar -x
|
|
||||||
|
|
||||||
# see, i could do complicated math to determine this based on the filename, or
|
|
||||||
# i could hard-code this and let it error if i've inexplicably grabbed
|
|
||||||
# nmap-7.8.1
|
|
||||||
|
|
||||||
cd "nmap-7.8.0"
|
|
||||||
|
|
||||||
./configure
|
|
||||||
make
|
|
||||||
sudo make install
|
|
|
@ -1,45 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
# This is the place for the scripts that are a bit more involved than can be
|
|
||||||
# expressed in shell aliases or functions, or that I want to access from dmenu.
|
|
||||||
# These are pretty messy but most of them work. Pretty easy for bugs to hide in
|
|
||||||
# here so I go in with pesticide often.
|
|
||||||
|
|
||||||
set -x
|
|
||||||
mkdir -p $HOME/bin/oneliners || exit
|
|
||||||
cd $HOME/bin/oneliners
|
|
||||||
|
|
||||||
SUDO=doas
|
|
||||||
SHEBANG="#!/bin/sh\n"
|
|
||||||
BASH_SHEBANG="#!/bin/bash\n"
|
|
||||||
|
|
||||||
DMENU_LINES="40"
|
|
||||||
|
|
||||||
# private bookmarks
|
|
||||||
printf $SHEBANG'$BROWSER file://$HOME/bookmarks.html\n' >bmarks
|
|
||||||
|
|
||||||
# deemix
|
|
||||||
printf $SHEBANG'python $HOME/src/deemix-pyweb/deemix-pyweb.py\n' >deemix
|
|
||||||
|
|
||||||
# settings for specific monitors
|
|
||||||
printf $SHEBANG'xrandr --output HDMI-1 --auto --mode 720x480 --right-of LVDS-1\n' >1702
|
|
||||||
printf $SHEBANG'xrandr --output VGA-1 --auto --right-of LVDS-1\n' >mv720
|
|
||||||
|
|
||||||
# more monitor settings
|
|
||||||
printf $SHEBANG"xrandr --output HDMI-1 --off\n" >hdmioff
|
|
||||||
printf $SHEBANG"xrandr --output VGA-1 --off\n" >vgaoff
|
|
||||||
|
|
||||||
# youtube-dl stuff
|
|
||||||
printf $SHEBANG"youtube-dl --add-metadata -i -o \"$HOME/%%(upload_date)s %%(title)s.%%(ext)s\" \"\$@\"\n" >youtube-dlo
|
|
||||||
printf $SHEBANG"youtube-dlo -f \"bestvideo[vcodec=vp9]+bestaudio[acodec=opus]\" \"\$@\"\n" >youtube-dlp
|
|
||||||
printf $SHEBANG"youtube-dlp -f \$(youtube-dl -F \$1 | tail +4 | dmenu -p \"Choose a format.\" -l $DMENU_LINES | awk '{ print \$1 }') \"\$@\"\n" >youtube-dl-interactive
|
|
||||||
printf $SHEBANG"youtube-dl-interactive \"\$@\" -o - | mpv -\n" >youtube-dl-mpv
|
|
||||||
|
|
||||||
# sxhkd
|
|
||||||
printf $SHEBANG"cd '$HOME/.config/sxhkd/'
|
|
||||||
cat sxhkdrc-base sxhkdrc-bspwm >sxhkdrc
|
|
||||||
pkill sxhkd -USR1\n" >sxhkd-bspwm-reload
|
|
||||||
|
|
||||||
set +x
|
|
||||||
|
|
||||||
ls && [ $(printf "Yes.\nNo." | dmenu -p "Any risky files?") = "No." ] && printf "Making executable.\n" && chmod +x *
|
|
|
@ -1,6 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
mkdir -p $HOME/src
|
|
||||||
cd $HOME/src
|
|
||||||
git clone https://git.suckless.org/sic
|
|
||||||
cd $HOME/src/dotfiles/scripts
|
|
||||||
./dsic.sh # apply patches
|
|
|
@ -1,8 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
# creates an 8GB empty file in the root dir
|
|
||||||
# that way when the alarm bells go off you can delete it to save a couple
|
|
||||||
# minutes before the system really runs out of disk
|
|
||||||
BS=512; COUNT=16777216 # 512 * 16777216 = 8GB
|
|
||||||
! [ -e /spacer.img ] || return 1 || exit 1
|
|
||||||
dd bs=$BS count=$COUNT </dev/zero >spacer.img
|
|
||||||
$SUDO mv ./spacer.img /spacer.img
|
|
|
@ -1,74 +0,0 @@
|
||||||
alsa-plugins-nice
|
|
||||||
alsa-utils
|
|
||||||
anki
|
|
||||||
audacious
|
|
||||||
curl
|
|
||||||
dvdbackup
|
|
||||||
ed
|
|
||||||
feh
|
|
||||||
ffmpeg
|
|
||||||
gcc
|
|
||||||
git
|
|
||||||
gparted
|
|
||||||
gperf
|
|
||||||
gwenview
|
|
||||||
htop
|
|
||||||
inetutils
|
|
||||||
iptables
|
|
||||||
k3b
|
|
||||||
kate
|
|
||||||
kdenlive
|
|
||||||
krita
|
|
||||||
lame
|
|
||||||
linux-headers
|
|
||||||
lynx
|
|
||||||
macchanger
|
|
||||||
make
|
|
||||||
man-pages
|
|
||||||
mercurial
|
|
||||||
moc
|
|
||||||
moreutils
|
|
||||||
mpv
|
|
||||||
net-tools
|
|
||||||
nmap
|
|
||||||
p7zip
|
|
||||||
pkgfile
|
|
||||||
powertop
|
|
||||||
progress
|
|
||||||
pulseaudio
|
|
||||||
pulseaudio-alsa
|
|
||||||
pulseaudio-utils
|
|
||||||
pulsemixer
|
|
||||||
python3
|
|
||||||
qbittorrent
|
|
||||||
qemu
|
|
||||||
rsync
|
|
||||||
s-tui
|
|
||||||
screen
|
|
||||||
scrot
|
|
||||||
sed
|
|
||||||
smartmontools
|
|
||||||
thunar
|
|
||||||
thunderbird
|
|
||||||
ttf-liberation
|
|
||||||
tlp
|
|
||||||
twin
|
|
||||||
units
|
|
||||||
unrar
|
|
||||||
unzip
|
|
||||||
util-linux
|
|
||||||
vim
|
|
||||||
virt-manager
|
|
||||||
vlc
|
|
||||||
wget
|
|
||||||
wireguard-tools
|
|
||||||
xclip
|
|
||||||
xf86-input-libinput
|
|
||||||
xf86-input-wacom
|
|
||||||
xf86-video-intel
|
|
||||||
xscreensaver
|
|
||||||
xterm
|
|
||||||
zathura
|
|
||||||
zathura-cb
|
|
||||||
zathura-djvu
|
|
||||||
zathura-ps
|
|
|
@ -1,12 +0,0 @@
|
||||||
build-base
|
|
||||||
consolekit2
|
|
||||||
dbus
|
|
||||||
dbus-x11
|
|
||||||
firefox
|
|
||||||
libx11-dev
|
|
||||||
libxft-dev
|
|
||||||
libxinerama-dev
|
|
||||||
neofetch
|
|
||||||
tcc
|
|
||||||
udev
|
|
||||||
xorg-xserver
|
|
|
@ -1 +0,0 @@
|
||||||
virtualbox-host-modules-arch
|
|
|
@ -1,7 +0,0 @@
|
||||||
acpid
|
|
||||||
acpid-openrc
|
|
||||||
fuse-openrc
|
|
||||||
iwd-openrc
|
|
||||||
libvirt-openrc
|
|
||||||
openresolv
|
|
||||||
wireguard-openrc
|
|
|
@ -1,8 +0,0 @@
|
||||||
bash
|
|
||||||
coreutils
|
|
||||||
ed
|
|
||||||
gcc
|
|
||||||
git
|
|
||||||
less
|
|
||||||
linux
|
|
||||||
make
|
|
|
@ -1,35 +0,0 @@
|
||||||
asp
|
|
||||||
base-devel
|
|
||||||
clisp
|
|
||||||
cpupower
|
|
||||||
dhcpcd
|
|
||||||
firefox-developer-edition
|
|
||||||
fuse2
|
|
||||||
gvim
|
|
||||||
i3status
|
|
||||||
iputils
|
|
||||||
iw
|
|
||||||
iwd
|
|
||||||
jre11-openjdk
|
|
||||||
jre8-openjdk
|
|
||||||
kimageformats
|
|
||||||
libreoffice-fresh
|
|
||||||
light
|
|
||||||
ntfs-3g
|
|
||||||
otf-ipafont
|
|
||||||
pulseaudio-alsa
|
|
||||||
pulseaudio-bluetooth
|
|
||||||
python-pip
|
|
||||||
qemu-arch-extra
|
|
||||||
qt5-imageformats
|
|
||||||
stalonetray
|
|
||||||
ttf-dejavu
|
|
||||||
vi
|
|
||||||
which
|
|
||||||
wireshark-cli
|
|
||||||
xorg-server
|
|
||||||
xorg-xauth
|
|
||||||
xorg-xinit
|
|
||||||
xorg-xrdb
|
|
||||||
youtube-dl
|
|
||||||
zathura-pdf-mupdf
|
|
|
@ -1,24 +0,0 @@
|
||||||
aic94xx-firmware
|
|
||||||
bitwarden
|
|
||||||
bitwarden-cli
|
|
||||||
bitwarden-dmenu
|
|
||||||
dashbinsh
|
|
||||||
discord_arch_electron
|
|
||||||
doas
|
|
||||||
freedownloadmanager
|
|
||||||
google-chrome
|
|
||||||
gzdoom
|
|
||||||
i3-gaps
|
|
||||||
i3-swallow
|
|
||||||
instagram-scraper
|
|
||||||
iwgtk
|
|
||||||
lemonbar-git
|
|
||||||
makebootfat
|
|
||||||
minecraft-launcher
|
|
||||||
mullvad-vpn-beta
|
|
||||||
multimc5
|
|
||||||
spotify
|
|
||||||
steam
|
|
||||||
tor-browser
|
|
||||||
wd719x-firmware
|
|
||||||
zoom
|
|
|
@ -1,2 +0,0 @@
|
||||||
moon-buggy
|
|
||||||
syncterm
|
|
|
@ -1,5 +0,0 @@
|
||||||
build-essential
|
|
||||||
fonts-dejavu
|
|
||||||
libreoffice
|
|
||||||
linux-tools-common
|
|
||||||
linux-tools-generic
|
|
|
@ -1,27 +0,0 @@
|
||||||
/* Licensed under the MIT/X Consortium license. For the full license details
|
|
||||||
* see the file `licenses/DMENU` in my (Deven Blake's) dotfiles repository or
|
|
||||||
* the file `LICENSE` in suckless's dmenu repository. */
|
|
||||||
|
|
||||||
static const char *colors[SchemeLast][2] = { /* { foreground, background } */
|
|
||||||
[SchemeNorm] = { "#ff0000", "#000000" },
|
|
||||||
[SchemeSel] = { "#ff0000", "#ffffff" },
|
|
||||||
[SchemeOut] = { "#000000", "#ffffff" },
|
|
||||||
};
|
|
||||||
|
|
||||||
/* default font */
|
|
||||||
static const char *fonts[] = {
|
|
||||||
"unscii:antialias=false:size=12",
|
|
||||||
"monospace:size=10"
|
|
||||||
};
|
|
||||||
|
|
||||||
/* -l option; if nonzero, dmenu uses vertical list with given number of lines */
|
|
||||||
static unsigned int lines = 0;
|
|
||||||
|
|
||||||
static const char *prompt = NULL;
|
|
||||||
|
|
||||||
/* if topbar == 0 it becomes a bottom bar */
|
|
||||||
static int topbar = 1;
|
|
||||||
|
|
||||||
/* Characters not considered part of a word while deleting words
|
|
||||||
* for example: " /?\"&[]" */
|
|
||||||
static const char worddelimiters[] = " ";
|
|
Loading…
Reference in New Issue
Block a user