update for guix
Signed-off-by: Skylar "The Cobra" Widulski <cobra@vern.cc>
This commit is contained in:
parent
756b45f57d
commit
3e1b5e4856
|
@ -1 +1,17 @@
|
|||
. ~/.bashrc
|
||||
# Honor per-interactive-shell startup file
|
||||
if [ -f ~/.bashrc ]; then . ~/.bashrc; fi
|
||||
export PATH="~/.local/bin:$PATH"
|
||||
export EDITOR="vim"
|
||||
export LESS_TERMCAP_mb='[01;32m'
|
||||
export LESS_TERMCAP_md='[01;32m'
|
||||
export LESS_TERMCAP_me='[0m'
|
||||
export LESS_TERMCAP_se='[0m'
|
||||
export LESS_TERMCAP_so='[01;47;34m'
|
||||
export LESS_TERMCAP_ue='[0m'
|
||||
export LESS_TERMCAP_us='[01;36m'
|
||||
export LESS=-R
|
||||
export TERM=xterm-256color
|
||||
|
||||
if [[ $(tty) == /dev/tty2 ]]; then
|
||||
sway
|
||||
fi
|
||||
|
|
35
.bashrc
35
.bashrc
|
@ -3,7 +3,6 @@
|
|||
[ -r ~/.devspec ] && . ~/.devspec
|
||||
[ -r ~/.config/isotope.dark ] && . ~/.config/isotope.dark
|
||||
|
||||
[ -z "$EDITOR" ] && . ~/.profile
|
||||
[ "$TERM" == "screen.linux" ] && export TERM="screen"
|
||||
|
||||
# History stuff
|
||||
|
@ -17,24 +16,18 @@ clear() {
|
|||
printf '\033c' # faster than ncurses clear by a lot
|
||||
}
|
||||
|
||||
# We hate sudo here
|
||||
alias sudo='sh -c "exit 1"'
|
||||
# Other aliases
|
||||
alias c='clear'
|
||||
alias ls='ls --color=auto -FAh'
|
||||
alias ll='ls -l'
|
||||
alias nf='neofetch'
|
||||
alias sshd='boas /usr/sbin/sshd'
|
||||
alias ga='git add'
|
||||
alias gc='git commit -sS'
|
||||
alias gp='git push'
|
||||
alias wv='mpv $($PASTE_COMMAND)'
|
||||
alias wv='swayhide mpv $($PASTE_COMMAND)'
|
||||
alias curl='curl -L'
|
||||
alias prof='profanity'
|
||||
|
||||
# Completions for elevation program (https://codeberg.org/Bowuigi/Unit21 in management/boas)
|
||||
complete -cf boas
|
||||
|
||||
# Random string (passwords)
|
||||
randstr() {
|
||||
tr -cd '[:graph:]' </dev/urandom | head -c ${1:-256}
|
||||
|
@ -46,7 +39,7 @@ cpusage() {
|
|||
}
|
||||
|
||||
# Update and upgrade system
|
||||
update() { boas sh -c "$UPDATE"; }
|
||||
update() { sudo sh -c "$UPDATE"; }
|
||||
|
||||
# Im too lazy to type
|
||||
copy() {
|
||||
|
@ -183,6 +176,26 @@ baseto() {
|
|||
rebash() { . ~/.bashrc; }
|
||||
bashrc() { "$EDITOR" ~/.bashrc && rebash; }
|
||||
|
||||
curplot() {
|
||||
ssh typhoon "~/gnuplot/gnuplot.sh; cat ~/gnuplot/$(date -I).svg" > $(date -I).svg
|
||||
tnplot() {
|
||||
ssh typhoon "${1:-~/gnuplot/gnuplot.sh}; cat ~/gnuplot/${1:-$(date -u -I)}.svg" > ${1:-$(date -u -I)}.svg
|
||||
}
|
||||
|
||||
vnplot() {
|
||||
ssh vern "${1:-/opt/gnuplot/net/gnuplot.sh}; cat /opt/gnuplot/net/${1:-$(date -u -I)}.svg" > ${1:-$(date -u -I)}.svg
|
||||
}
|
||||
|
||||
vpplot() {
|
||||
ssh vern "${1:-/opt/gnuplot/power/gnuplot.sh}; cat /opt/gnuplot/power/${1:-$(date -u -I)}.svg" > ${1:-$(date -u -I)}.svg
|
||||
}
|
||||
|
||||
inplot() {
|
||||
ssh iceberg "${1:-~/gnuplot/gnuplot.sh}; cat ~/gnuplot/${1:-$(date -u -I)}.svg" > ${1:-$(date -u -I)}.svg
|
||||
}
|
||||
|
||||
cnplot() {
|
||||
ssh crescent "${1:-/opt/gnuplot/net/gnuplot.sh}; cat /opt/gnuplot/net/${1:-$(date -u -I)}.svg" > ${1:-$(date -u -I)}.svg
|
||||
}
|
||||
|
||||
cpplot() {
|
||||
ssh crescent "${1:-/opt/gnuplot/power/gnuplot.sh}; cat /opt/gnuplot/power/${1:-$(date -u -I)}.svg" > ${1:-$(date -u -I)}.svg
|
||||
}
|
||||
|
|
|
@ -1,15 +1,79 @@
|
|||
# configversion: 1
|
||||
font=monospace:size=6
|
||||
dpi-aware=no
|
||||
# -*- conf -*-
|
||||
# shell=$SHELL (if set, otherwise user's default shell from /etc/passwd)
|
||||
# term=foot (or xterm-256color if built with -Dterminfo=disabled)
|
||||
# login-shell=no
|
||||
|
||||
# app-id=foot
|
||||
# title=foot
|
||||
# locked-title=no
|
||||
|
||||
font= Fira Code:size=8
|
||||
|
||||
# font-bold=<bold variant of regular font>
|
||||
# font-italic=<italic variant of regular font>
|
||||
# font-bold-italic=<bold+italic variant of regular font>
|
||||
# line-height=<font metrics>
|
||||
# letter-spacing=0
|
||||
# horizontal-letter-offset=0
|
||||
# vertical-letter-offset=0
|
||||
# underline-offset=<font metrics>
|
||||
# box-drawings-uses-font-glyphs=no
|
||||
|
||||
dpi-aware=false
|
||||
|
||||
# initial-window-size-pixels=700x500 # Or,
|
||||
# initial-window-size-chars=<COLSxROWS>
|
||||
# initial-window-mode=windowed
|
||||
pad=10x10 # optionally append 'center'
|
||||
# resize-delay-ms=100
|
||||
|
||||
# notify=notify-send -a ${app-id} -i ${app-id} ${title} ${body}
|
||||
|
||||
bold-text-in-bright=no
|
||||
# word-delimiters=,│`|:"'()[]{}<>
|
||||
# selection-target=primary
|
||||
# workers=<number of logical CPUs>
|
||||
|
||||
[bell]
|
||||
# urgent=no
|
||||
# notify=no
|
||||
# command=
|
||||
# command-focused=no
|
||||
|
||||
[scrollback]
|
||||
# lines=1000
|
||||
# multiplier=3.0
|
||||
# indicator-position=relative
|
||||
# indicator-format=
|
||||
|
||||
[url]
|
||||
# launch=xdg-open ${url}
|
||||
# label-letters=sadfjklewcmpgh
|
||||
# osc8-underline=url-mode
|
||||
# protocols=http, https, ftp, ftps, file, gemini, gopher
|
||||
# uri-characters=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_.,~:;/?#@!$&%*+="'()[]
|
||||
|
||||
[cursor]
|
||||
# style=block
|
||||
# color=<inverse foreground/background>
|
||||
blink=yes
|
||||
# beam-thickness=1.5
|
||||
# underline-thickness=<font underline thickness>
|
||||
|
||||
[mouse]
|
||||
hide-when-typing=yes
|
||||
# alternate-scroll-mode=yes
|
||||
|
||||
[colors]
|
||||
alpha=0.7
|
||||
alpha=0.8
|
||||
#Default
|
||||
|
||||
foreground=d0d0d0
|
||||
background=000000
|
||||
regular0=000000 # black
|
||||
regular0=222222 # black
|
||||
regular1=ff0000 # red
|
||||
regular2=33ff00 # green
|
||||
regular3=ff0099 # yellow
|
||||
regular3=ff9900 # yellow
|
||||
regular4=0066ff # blue
|
||||
regular5=cc00ff # magenta
|
||||
regular6=00ffff # cyan
|
||||
|
@ -17,9 +81,106 @@ regular7=d0d0d0 # white
|
|||
bright0=808080 # bright black
|
||||
bright1=ff0000 # bright red
|
||||
bright2=33ff00 # bright green
|
||||
bright3=ff0099 # bright yellow
|
||||
bright3=ff9900 # bright yellow
|
||||
bright4=0066ff # bright blue
|
||||
bright5=cc00ff # bright magenta
|
||||
bright6=00ffff # bright cyan
|
||||
bright7=ffffff # bright white
|
||||
|
||||
## dimmed colors (see foot.ini(5) man page)
|
||||
# dim0=<not set>
|
||||
# ...
|
||||
# dim7=<not-set>
|
||||
|
||||
## The remaining 256-color palette
|
||||
#16 = <256-color palette #16>
|
||||
# ...
|
||||
#255 = <256-color palette #255>
|
||||
|
||||
## Misc colors
|
||||
#selection-foreground=<inverse foreground/background>
|
||||
#selection-background=<inverse foreground/background>
|
||||
#jump-labels=<regular0> <regular3>
|
||||
#urls=<regular3>
|
||||
#scrollback-indicator=<regular0> <bright4>
|
||||
|
||||
[csd]
|
||||
# preferred=server
|
||||
# size=26
|
||||
# font=<primary font>
|
||||
# color=<foreground color>
|
||||
# hide-when-typing=no
|
||||
# border-width=0
|
||||
# border-color=<csd.color>
|
||||
# button-width=26
|
||||
# button-color=<background color>
|
||||
# button-minimize-color=<regular4>
|
||||
# button-maximize-color=<regular2>
|
||||
# button-close-color=<regular1>
|
||||
|
||||
[key-bindings]
|
||||
scrollback-up-page=none
|
||||
scrollback-up-half-page=Mod1+Shift+e
|
||||
scrollback-up-line=Mod1+e
|
||||
scrollback-down-page=none
|
||||
scrollback-down-half-page=Mod1+Shift+n
|
||||
scrollback-down-line=Mod1+n
|
||||
#clipboard-copy=Control+Shift+c XF86Copy
|
||||
#clipboard-paste=Control+Shift+v XF86Paste
|
||||
# primary-paste=Shift+Insert
|
||||
# search-start=Control+Shift+r
|
||||
# font-increase=Control+plus Control+equal Control+KP_Add
|
||||
# font-decrease=Control+minus Control+KP_Subtract
|
||||
# font-reset=Control+0 Control+KP_0
|
||||
# spawn-terminal=Control+Shift+n
|
||||
# minimize=none
|
||||
# maximize=none
|
||||
# fullscreen=none
|
||||
# pipe-visible=[sh -c "xurls | fuzzel | xargs -r firefox"] none
|
||||
# pipe-scrollback=[sh -c "xurls | fuzzel | xargs -r firefox"] none
|
||||
# pipe-selected=[xargs -r firefox] none
|
||||
# show-urls-launch=Control+Shift+u
|
||||
# show-urls-copy=none
|
||||
# show-urls-persistent=none
|
||||
# noop=none
|
||||
|
||||
[search-bindings]
|
||||
# cancel=Control+g Control+c Escape
|
||||
# commit=Return
|
||||
# find-prev=Control+r
|
||||
# find-next=Control+s
|
||||
# cursor-left=Left Control+b
|
||||
# cursor-left-word=Control+Left Mod1+b
|
||||
# cursor-right=Right Control+f
|
||||
# cursor-right-word=Control+Right Mod1+f
|
||||
# cursor-home=Home Control+a
|
||||
# cursor-end=End Control+e
|
||||
# delete-prev=BackSpace
|
||||
# delete-prev-word=Mod1+BackSpace Control+BackSpace
|
||||
# delete-next=Delete
|
||||
# delete-next-word=Mod1+d Control+Delete
|
||||
# extend-to-word-boundary=Control+w
|
||||
# extend-to-next-whitespace=Control+Shift+w
|
||||
# clipboard-paste=Control+v Control+Shift+v Control+y XF86Paste
|
||||
# primary-paste=Shift+Insert
|
||||
|
||||
[url-bindings]
|
||||
# cancel=Control+g Control+c Control+d Escape
|
||||
# toggle-url-visible=t
|
||||
|
||||
[text-bindings]
|
||||
# \x03=Mod4+c # Map Super+c -> Ctrl+c
|
||||
|
||||
[mouse-bindings]
|
||||
# selection-override-modifiers=Shift
|
||||
# primary-paste=BTN_MIDDLE
|
||||
# select-begin=BTN_LEFT
|
||||
# select-begin-block=Control+BTN_LEFT
|
||||
# select-extend=BTN_RIGHT
|
||||
# select-extend-character-wise=Control+BTN_RIGHT
|
||||
# select-word=BTN_LEFT-2
|
||||
# select-word-whitespace=Control+BTN_LEFT-2
|
||||
# select-row=BTN_LEFT-3
|
||||
|
||||
# vim: ft=dosini
|
||||
|
||||
|
|
|
@ -0,0 +1,57 @@
|
|||
(use-modules
|
||||
(gnu home)
|
||||
(gnu packages)
|
||||
(gnu services)
|
||||
(gnu home services shells)
|
||||
)
|
||||
|
||||
(home-environment
|
||||
(packages (cons*
|
||||
(specifications->packages (list
|
||||
"git"
|
||||
"libqalculate"
|
||||
"bc"
|
||||
"icecat"
|
||||
"cryptsetup"
|
||||
"gnupg"
|
||||
"openssh"
|
||||
"profanity"
|
||||
"go"
|
||||
"adanaxisgpl"
|
||||
"supertuxkart"
|
||||
"minetest"
|
||||
"mpv"
|
||||
"imagemagick"
|
||||
"rsync"
|
||||
"neofetch"
|
||||
"gnunet"
|
||||
"lm-sensors"
|
||||
"acpi"
|
||||
"gnupg"
|
||||
"password-store"
|
||||
"xclip"
|
||||
"font-fira-mono"
|
||||
"font-fira-code"
|
||||
"newsboat"
|
||||
"kodi"
|
||||
"yt-dlp"
|
||||
"gcc-toolchain"
|
||||
"icedove"
|
||||
"irssi"
|
||||
"monero-gui"
|
||||
"pamixer"
|
||||
"slurp"
|
||||
"grim"
|
||||
"foot"
|
||||
"wofi"
|
||||
"swayidle"
|
||||
"swayhide"
|
||||
"wl-clipboard"
|
||||
"mako"
|
||||
"xorg-server-xwayland"
|
||||
"htop"
|
||||
"pinentry"
|
||||
"ungoogled-chromium-wayland"
|
||||
"make"
|
||||
))
|
||||
)))
|
|
@ -0,0 +1,182 @@
|
|||
# SWAY CONFIG
|
||||
|
||||
|
||||
# Variables
|
||||
|
||||
set $mod Mod4
|
||||
set $left h
|
||||
set $down n
|
||||
set $up e
|
||||
set $right i
|
||||
set $menu wofi --show drun -i -H 500 -W 450
|
||||
set $term foot
|
||||
|
||||
floating_modifier $mod normal
|
||||
default_border pixel 1
|
||||
client.focused #ffffff #ffffff #000000 #fc2d2d
|
||||
client.unfocused #000000 #000000 #ffffff
|
||||
client.focused_inactive #000000 #000000 #ffffff
|
||||
gaps inner 5
|
||||
gaps outer 0
|
||||
font pango: Fira Code 12
|
||||
|
||||
# No gaps if there's only 1 window
|
||||
smart_gaps on
|
||||
|
||||
# Hides the borders if theres only 1 window
|
||||
hide_edge_borders smart
|
||||
|
||||
# Output configuration
|
||||
output * {
|
||||
bg ~/.config/sway/background.png fill
|
||||
}
|
||||
# Input configuration
|
||||
|
||||
# Key bindings
|
||||
bindsym $mod+Return exec $term
|
||||
bindsym $mod+Shift+Return exec $term -a float
|
||||
bindsym $mod+q kill
|
||||
bindsym $mod+F4 wkill
|
||||
bindsym $mod+d exec $menu
|
||||
bindsym $mod+Shift+c reload
|
||||
bindsym mod1+shift+w exec setbg -s
|
||||
bindsym $mod+m exec pulsemixer --toggle-mute
|
||||
bindsym $mod+p exec ~/.local/bin/screenshot -w
|
||||
bindsym $mod+Shift+l exec ~/.local/bin/lock
|
||||
bindsym $mod+Shift+q exec ~/.local/bin/logout-wofi
|
||||
|
||||
# Moving around:
|
||||
|
||||
# Move your focus around
|
||||
bindsym $mod+$left focus left
|
||||
bindsym $mod+$down focus down
|
||||
bindsym $mod+$up focus up
|
||||
bindsym $mod+$right focus right
|
||||
bindsym $mod+Left focus left
|
||||
bindsym $mod+Down focus down
|
||||
bindsym $mod+Up focus up
|
||||
bindsym $mod+Right focus right
|
||||
|
||||
# Move the focused window with the same, but add Shift
|
||||
bindsym $mod+Shift+$left move left
|
||||
bindsym $mod+Shift+$down move down
|
||||
bindsym $mod+Shift+$up move up
|
||||
bindsym $mod+Shift+$right move right
|
||||
bindsym $mod+Shift+Left move left
|
||||
bindsym $mod+Shift+Down move down
|
||||
bindsym $mod+Shift+Up move up
|
||||
bindsym $mod+Shift+Right move right
|
||||
|
||||
#resize
|
||||
bindsym $mod+mod1+$left exec swaymsg resize shrink right 10px || swaymsg resize grow left 10px
|
||||
bindsym $mod+mod1+$down exec swaymsg resize grow down 10px || swaymsg resize shrink up 10px
|
||||
bindsym $mod+mod1+$up exec swaymsg resize shrink down 10px || swaymsg resize grow up 10px
|
||||
bindsym $mod+mod1+$right exec swaymsg resize grow right 10px || swaymsg resize shrink left 10px
|
||||
|
||||
# Workspaces:
|
||||
|
||||
# Switch to workspace
|
||||
bindsym $mod+1 workspace number 1
|
||||
bindsym $mod+2 workspace number 2
|
||||
bindsym $mod+3 workspace number 3
|
||||
bindsym $mod+4 workspace number 4
|
||||
bindsym $mod+5 workspace number 5
|
||||
bindsym $mod+6 workspace number 6
|
||||
bindsym $mod+7 workspace number 7
|
||||
bindsym $mod+8 workspace number 8
|
||||
bindsym $mod+9 workspace number 9
|
||||
bindsym $mod+0 workspace number 10
|
||||
# Move focused container to workspace
|
||||
bindsym $mod+Shift+1 move container to workspace number 1
|
||||
bindsym $mod+Shift+2 move container to workspace number 2
|
||||
bindsym $mod+Shift+3 move container to workspace number 3
|
||||
bindsym $mod+Shift+4 move container to workspace number 4
|
||||
bindsym $mod+Shift+5 move container to workspace number 5
|
||||
bindsym $mod+Shift+6 move container to workspace number 6
|
||||
bindsym $mod+Shift+7 move container to workspace number 7
|
||||
bindsym $mod+Shift+8 move container to workspace number 8
|
||||
bindsym $mod+Shift+9 move container to workspace number 9
|
||||
bindsym $mod+Shift+0 move container to workspace number 10
|
||||
|
||||
# Layout stuff:
|
||||
bindsym $mod+b splith
|
||||
bindsym $mod+v splitv
|
||||
|
||||
# Switch the current container between different layout styles
|
||||
bindsym $mod+t layout toggle split
|
||||
bindsym $mod+Shift+t layout tabbed
|
||||
bindsym $mod+Shift+s layout stacking
|
||||
|
||||
# Make the current focus fullscreen
|
||||
bindsym $mod+f fullscreen
|
||||
|
||||
# Toggle the current focus between tiling and floating mode
|
||||
bindsym $mod+space floating toggle
|
||||
|
||||
# Swap focus between the tiling area and the floating area
|
||||
bindsym $mod+Shift+space focus mode_toggle
|
||||
|
||||
# Move focus to the parent container
|
||||
bindsym $mod+a focus parent
|
||||
|
||||
# Sticky
|
||||
bindsym $mod+s sticky toggle
|
||||
# Scratchpad:
|
||||
|
||||
bindsym $mod+bracketleft move scratchpad
|
||||
bindsym $mod+bracketright scratchpad show
|
||||
|
||||
|
||||
# Resizing containers:
|
||||
|
||||
mode "resize" {
|
||||
bindsym $left resize shrink width 10px
|
||||
bindsym $down resize grow height 10px
|
||||
bindsym $up resize shrink height 10px
|
||||
bindsym $right resize grow width 10px
|
||||
|
||||
# Ditto, with arrow keys
|
||||
bindsym Left resize shrink width 10px
|
||||
bindsym Down resize grow height 10px
|
||||
bindsym Up resize shrink height 10px
|
||||
bindsym Right resize grow width 10px
|
||||
|
||||
# Return to default mode
|
||||
bindsym Return mode "default"
|
||||
bindsym Escape mode "default"
|
||||
}
|
||||
|
||||
|
||||
# Media Keys
|
||||
bindsym XF86AudioLowerVolume exec pamixer -d 5
|
||||
bindsym XF86AudioRaiseVolume exec pamixer -i 5
|
||||
bindsym XF86AudioMute exec pulsemixer --toggle-mute
|
||||
|
||||
bindsym XF86MonBrightnessUp exec brightnessctl s +5%
|
||||
bindsym XF86MonBrightnessDown exec brightnessctl s 5%-
|
||||
|
||||
#bindsym XF86KbdBrightnessDown exec brightnessctl -d apple::kbd_backlight s 10%-
|
||||
#bindsym XF86KbdBrightnessUp exec brightnessctl -d apple::kbd_backlight s 10%+
|
||||
|
||||
bindsym XF86AudioStop exec playerctl stop
|
||||
bindsym XF86AudioPlay exec playerctl play-pause
|
||||
bindsym XF86AudioNext exec playerctl next
|
||||
bindsym XF86AudioPrev exec playerctl previous
|
||||
|
||||
|
||||
# Rules
|
||||
for_window [app_id="float"] floating enable;
|
||||
for_window [app_id="org.gnome.Calculator"] floating enable;
|
||||
for_window [app_id="org.kde.kdenlive"] floating enable;
|
||||
for_window [app_id="gcolor3"] floating enable;
|
||||
|
||||
exec autotiling
|
||||
exec swayidle -w timeout 240 '~/.local/bin/lock' before-sleep '~/.local/bin/lock'
|
||||
bindswitch --reload --locked lid:on exec ~/.local/bin/lock
|
||||
|
||||
bar {
|
||||
swaybar_command waybar
|
||||
}
|
||||
}
|
||||
|
||||
include /etc/sway/config.d/*
|
|
@ -0,0 +1,175 @@
|
|||
// =============================================================================
|
||||
//
|
||||
// Waybar configuration
|
||||
//
|
||||
// Configuration reference: https://github.com/Alexays/Waybar/wiki/Configuration
|
||||
//
|
||||
// =============================================================================
|
||||
|
||||
{
|
||||
// -------------------------------------------------------------------------
|
||||
// Global configuration
|
||||
// -------------------------------------------------------------------------
|
||||
|
||||
"layer": "top",
|
||||
|
||||
"position": "top",
|
||||
|
||||
// If height property would be not present, it'd be calculated dynamically
|
||||
"height": 30,
|
||||
|
||||
"modules-left": [
|
||||
"sway/workspaces",
|
||||
"sway/window",
|
||||
"sway/mode",
|
||||
],
|
||||
// "modules-center": [
|
||||
// ],
|
||||
"modules-right": [
|
||||
"network",
|
||||
"memory",
|
||||
"cpu",
|
||||
"temperature",
|
||||
"custom/keyboard-layout",
|
||||
"battery",
|
||||
"tray",
|
||||
"clock#date",
|
||||
"clock#time"
|
||||
],
|
||||
|
||||
|
||||
// -------------------------------------------------------------------------
|
||||
// Modules
|
||||
// -------------------------------------------------------------------------
|
||||
|
||||
"battery": {
|
||||
"interval": 10,
|
||||
"states": {
|
||||
"warning": 30,
|
||||
"critical": 15
|
||||
},
|
||||
// Connected to AC
|
||||
"format": "BAT ^{capacity}%", // Icon: bolt
|
||||
// Not connected to AC
|
||||
"format-discharging": "BAT {capacity}%",
|
||||
"format-icons": [
|
||||
"DEAD", // Icon: battery-full
|
||||
"LOW", // Icon: battery-three-quarters
|
||||
"HALF", // Icon: battery-half
|
||||
"OK", // Icon: battery-quarter
|
||||
"FULL" // Icon: battery-empty
|
||||
],
|
||||
"tooltip": true
|
||||
},
|
||||
|
||||
"clock#time": {
|
||||
"interval": 1,
|
||||
"format": "{:%H:%M:%S}",
|
||||
"tooltip": false
|
||||
},
|
||||
|
||||
"clock#date": {
|
||||
"interval": 10,
|
||||
"format": " {:%e %b %Y}", // Icon: calendar-alt
|
||||
"tooltip-format": "{:%e %B %Y}"
|
||||
},
|
||||
|
||||
"cpu": {
|
||||
"interval": 5,
|
||||
"format": "CPU {usage}% ({load})", // Icon: microchip
|
||||
"states": {
|
||||
"warning": 70,
|
||||
"critical": 90
|
||||
}
|
||||
},
|
||||
|
||||
"custom/keyboard-layout": {
|
||||
"exec": "swaymsg -t get_inputs | grep -m1 'xkb_active_layout_name' | cut -d '\"' -f4",
|
||||
// Interval set only as a fallback, as the value is updated by signal
|
||||
"interval": 30,
|
||||
"format": "{}", // Icon: keyboard
|
||||
// Signal sent by Sway key binding (~/.config/sway/key-bindings)
|
||||
"signal": 1, // SIGHUP
|
||||
"tooltip": false
|
||||
},
|
||||
|
||||
"memory": {
|
||||
"interval": 5,
|
||||
"format": "RAM {}%", // Icon: memory
|
||||
"states": {
|
||||
"warning": 70,
|
||||
"critical": 90
|
||||
}
|
||||
},
|
||||
|
||||
"network": {
|
||||
"interval": 5,
|
||||
"format-wifi": "WIFI {essid} ({signalStrength}%)", // Icon: wifi
|
||||
"format-ethernet": "ETH {ifname}: {ipaddr}/{cidr}", // Icon: ethernet
|
||||
"format-disconnected": "⚠ Disconnected",
|
||||
"tooltip-format": "{ifname}: {ipaddr}"
|
||||
},
|
||||
|
||||
"sway/mode": {
|
||||
"format": "<span style=\"italic\"> {}</span>", // Icon: expand-arrows-alt
|
||||
"tooltip": false
|
||||
},
|
||||
|
||||
"sway/window": {
|
||||
"format": "{}",
|
||||
"max-length": 120
|
||||
},
|
||||
|
||||
"sway/workspaces": {
|
||||
"all-outputs": false,
|
||||
"disable-scroll": true,
|
||||
"format": "{icon} {name}",
|
||||
"format-icons": {
|
||||
// "1:www": "龜", // Icon: firefox-browser
|
||||
// "2:mail": "", // Icon: mail
|
||||
// "3:editor": "", // Icon: code
|
||||
// "4:terminals": "", // Icon: terminal
|
||||
// "5:portal": "", // Icon: terminal
|
||||
// "urgent": "",
|
||||
"focused": "",
|
||||
"default": ""
|
||||
}
|
||||
},
|
||||
|
||||
//"pulseaudio": {
|
||||
// //"scroll-step": 1,
|
||||
// "format": "{icon} {volume}%",
|
||||
// "format-bluetooth": "{icon} {volume}%",
|
||||
// "format-muted": "",
|
||||
// "format-icons": {
|
||||
// "headphones": "",
|
||||
// "handsfree": "",
|
||||
// "headset": "",
|
||||
// "phone": "",
|
||||
// "portable": "",
|
||||
// "car": "",
|
||||
// "default": ["", ""]
|
||||
// },
|
||||
// "on-click": "pavucontrol"
|
||||
//},
|
||||
|
||||
"temperature": {
|
||||
"critical-threshold": 80,
|
||||
"interval": 5,
|
||||
"format": "{temperatureC}°C",
|
||||
"format-icons": [
|
||||
"", // Icon: temperature-empty
|
||||
"", // Icon: temperature-quarter
|
||||
"", // Icon: temperature-half
|
||||
"", // Icon: temperature-three-quarters
|
||||
"" // Icon: temperature-full
|
||||
],
|
||||
"tooltip": true
|
||||
},
|
||||
|
||||
"tray": {
|
||||
"icon-size": 21,
|
||||
"spacing": 10
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,196 @@
|
|||
/* =============================================================================
|
||||
*
|
||||
* Waybar configuration
|
||||
*
|
||||
* Configuration reference: https://github.com/Alexays/Waybar/wiki/Configuration
|
||||
*
|
||||
* =========================================================================== */
|
||||
|
||||
/* -----------------------------------------------------------------------------
|
||||
* Keyframes
|
||||
* -------------------------------------------------------------------------- */
|
||||
|
||||
@keyframes blink-warning {
|
||||
70% {
|
||||
color: white;
|
||||
}
|
||||
|
||||
to {
|
||||
color: white;
|
||||
background-color: orange;
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes blink-critical {
|
||||
70% {
|
||||
color: white;
|
||||
}
|
||||
|
||||
to {
|
||||
color: white;
|
||||
background-color: red;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* -----------------------------------------------------------------------------
|
||||
* Base styles
|
||||
* -------------------------------------------------------------------------- */
|
||||
|
||||
/* Reset all styles */
|
||||
* {
|
||||
border: none;
|
||||
border-radius: 0;
|
||||
min-height: 0;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
/* The whole bar */
|
||||
#waybar {
|
||||
background: #323232;
|
||||
color: white;
|
||||
font-family: 'FiraMono Nerd Font';
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
/* Each module */
|
||||
#battery,
|
||||
#clock,
|
||||
#cpu,
|
||||
#custom-keyboard-layout,
|
||||
#memory,
|
||||
#mode,
|
||||
#network,
|
||||
#pulseaudio,
|
||||
#temperature,
|
||||
#tray {
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
}
|
||||
|
||||
|
||||
/* -----------------------------------------------------------------------------
|
||||
* Module styles
|
||||
* -------------------------------------------------------------------------- */
|
||||
|
||||
#battery {
|
||||
animation-timing-function: linear;
|
||||
animation-iteration-count: infinite;
|
||||
animation-direction: alternate;
|
||||
}
|
||||
|
||||
#battery.warning {
|
||||
color: orange;
|
||||
}
|
||||
|
||||
#battery.critical {
|
||||
color: red;
|
||||
}
|
||||
|
||||
#battery.warning.discharging {
|
||||
animation-name: blink-warning;
|
||||
animation-duration: 3s;
|
||||
}
|
||||
|
||||
#battery.critical.discharging {
|
||||
animation-name: blink-critical;
|
||||
animation-duration: 2s;
|
||||
}
|
||||
|
||||
#clock {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
#cpu {
|
||||
/* No styles */
|
||||
}
|
||||
|
||||
#cpu.warning {
|
||||
color: orange;
|
||||
}
|
||||
|
||||
#cpu.critical {
|
||||
color: red;
|
||||
}
|
||||
|
||||
#memory {
|
||||
animation-timing-function: linear;
|
||||
animation-iteration-count: infinite;
|
||||
animation-direction: alternate;
|
||||
}
|
||||
|
||||
#memory.warning {
|
||||
color: orange;
|
||||
}
|
||||
|
||||
#memory.critical {
|
||||
color: red;
|
||||
animation-name: blink-critical;
|
||||
animation-duration: 2s;
|
||||
}
|
||||
|
||||
#mode {
|
||||
background: #64727D;
|
||||
border-top: 2px solid white;
|
||||
/* To compensate for the top border and still have vertical centering */
|
||||
padding-bottom: 2px;
|
||||
margin-left: 10px;
|
||||
}
|
||||
|
||||
#network {
|
||||
/* No styles */
|
||||
}
|
||||
|
||||
#network.disconnected {
|
||||
color: orange;
|
||||
}
|
||||
|
||||
#pulseaudio {
|
||||
/* No styles */
|
||||
}
|
||||
|
||||
#pulseaudio.muted {
|
||||
/* No styles */
|
||||
}
|
||||
|
||||
#custom-spotify {
|
||||
color: rgb(102, 220, 105);
|
||||
}
|
||||
|
||||
#temperature {
|
||||
/* No styles */
|
||||
}
|
||||
|
||||
#temperature.critical {
|
||||
color: red;
|
||||
}
|
||||
|
||||
#tray {
|
||||
/* No styles */
|
||||
}
|
||||
|
||||
#window {
|
||||
font-weight: bold;
|
||||
padding-left: 5px;
|
||||
}
|
||||
|
||||
#workspaces button {
|
||||
border-top: 2px solid transparent;
|
||||
/* To compensate for the top border and still have vertical centering */
|
||||
padding-bottom: 2px;
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
color: #888888;
|
||||
}
|
||||
|
||||
#workspaces button.focused {
|
||||
border-color: #4c7899;
|
||||
color: white;
|
||||
background-color: #285577;
|
||||
}
|
||||
|
||||
#workspaces button.urgent {
|
||||
border-color: #c9545d;
|
||||
color: #c9545d;
|
||||
}
|
5
.devspec
5
.devspec
|
@ -5,6 +5,11 @@ if [[ "$SXMO_WM" ]]; then
|
|||
COPY_COMMAND="wl-copy"
|
||||
PASTE_COMMAND="wl-paste"
|
||||
WIFI=wlan0
|
||||
elif [[ -d /gnu ]]; then
|
||||
UPDATE="guix pull --branch=master && guix package -u"
|
||||
COPY_COMMAND="wl-copy"
|
||||
PASTE_COMMAND="wl-paste"
|
||||
WIFI=wlp2s0
|
||||
else
|
||||
UPDATE="apt update && apt upgrade && apt autoremove"
|
||||
COPY_COMMAND="xclip -i -selection clipboard"
|
||||
|
|
|
@ -0,0 +1,15 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
cpu() {
|
||||
bc<<<"scale=3;$(ps aux | awk 'BEGIN {sum=0} {sum+=$3}; END {print sum}') / $(nproc --all)"
|
||||
}
|
||||
|
||||
ram() {
|
||||
free -h | sed '2!d' | (read _ _ used _; echo $used)
|
||||
}
|
||||
|
||||
bat() {
|
||||
acpi -b | sed 's/Battery /BAT/'
|
||||
}
|
||||
|
||||
echo "$(cpu)% $(ram) $(bat)"
|
|
@ -0,0 +1,4 @@
|
|||
#!/usr/bin/env bash
|
||||
swayidle -w timeout 15 'swaymsg "output * dpms off"' resume 'swaymsg "output * dpms on"' &
|
||||
swaylock -eFfkl -i ~/.config/sway/background.png --font "Fira Code"
|
||||
pkill --newest swayidle
|
|
@ -0,0 +1,10 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
case "$(printf "logout\nreboot\nshutdown\nsleep\n" | wofi --dmenu -i -H 500 -W 250 -x 0 -y 0 )" in
|
||||
'logout') swaymsg exit;;
|
||||
'sleep') swaylock -f -F -e -i ~/.config/sway/wall -k -l -s fill --font IBM Plex Mono && systemctl suspend ;;
|
||||
'reboot') reboot ;;
|
||||
'shutdown') poweroff ;;
|
||||
*) exit 1 ;;
|
||||
esac
|
||||
|
|
@ -0,0 +1,44 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
if [ ! -d $HOME/Pictures/Screenshots ]
|
||||
then
|
||||
mkdir -p $HOME/Pictures/Screenshots
|
||||
fi
|
||||
|
||||
fullscreen() {
|
||||
filename=$HOME/Pictures/Screenshots/$(date +%Y%m%d_%H:%M:%S_Fullscreen).png
|
||||
grim $filename
|
||||
cat $filename | wl-copy \
|
||||
&& notify-send -i $filename "Fullscreen Screenshot taken"
|
||||
}
|
||||
|
||||
selecting() {
|
||||
filename=$HOME/Pictures/Screenshots/$(date +%Y%m%d_%H:%M:%S_Selected).png
|
||||
grim -g "$(slurp -b e3eaf699)" $filename \
|
||||
&& notify-send -i $filename "Selective Screenshot taken"
|
||||
cat $filename | wl-copy
|
||||
}
|
||||
|
||||
wofirun() {
|
||||
case "$(printf "fullscreen\nselect\n" | wofi --dmenu -i -H 500 -W 250 -x 0 -y 0 )" in
|
||||
'fullscreen')fullscreen;;
|
||||
'select')selecting;;
|
||||
esac
|
||||
}
|
||||
|
||||
helpscreen() {
|
||||
echo "Usage: screenshot [-f] [-s] [-w] [-h] "
|
||||
echo "Options:"
|
||||
echo "-f : Fullscreen screenshot"
|
||||
echo "-s : Select a region for the screenshot"
|
||||
echo "-w : Shows a wofi prompt for screenshot"
|
||||
echo "-h : Shows this fucking help menu"
|
||||
echo "If no flags are selected then -f is chosen"
|
||||
}
|
||||
case $1 in
|
||||
-f)fullscreen;;
|
||||
-s)selecting;;
|
||||
-h)helpscreen;;
|
||||
-w)wofirun;;
|
||||
*)fullscreen;;
|
||||
esac
|
|
@ -1,4 +1,4 @@
|
|||
browser "mpv --user-agent=Mozilla/5.0 '--ytdl-format=bestvideo[height=?480][fps<=?30]+bestaudio/best' %u"
|
||||
browser "swayhide mpv --user-agent=Mozilla/5.0 '--ytdl-format=bestvideo[height=?480][fps<=?30]+bestaudio/best' %u"
|
||||
use-proxy yes
|
||||
proxy-type socks5h
|
||||
proxy 127.0.0.1:9050
|
||||
|
|
12
.profile
12
.profile
|
@ -1,12 +0,0 @@
|
|||
export EDITOR=vim
|
||||
export INVIDIOUS="https://inv.vern.cc"
|
||||
export PATH="$HOME/.local/bin:$PATH"
|
||||
|
||||
export LESS_TERMCAP_mb='[01;32m'
|
||||
export LESS_TERMCAP_md='[01;32m'
|
||||
export LESS_TERMCAP_me='[0m'
|
||||
export LESS_TERMCAP_se='[0m'
|
||||
export LESS_TERMCAP_so='[01;47;34m'
|
||||
export LESS_TERMCAP_ue='[0m'
|
||||
export LESS_TERMCAP_us='[01;36m'
|
||||
export LESS=-R
|
|
@ -0,0 +1,36 @@
|
|||
backtick 0 1 1 "/home/cobra/.local/bin/backtick"
|
||||
|
||||
hardstatus alwayslastline "%{=b}%{G}%{b}%w %=%{r}%` %{kG}%C%A %d/%M/%Y "
|
||||
|
||||
|
||||
termcapinfo xterm|xterms|xs|rxvt ti@:te@
|
||||
startup_message off
|
||||
msgwait 3
|
||||
defscrollback 4096
|
||||
|
||||
vbell off
|
||||
bell " %n %t !"
|
||||
|
||||
nethack on
|
||||
caption splitonly "%2n %t"
|
||||
|
||||
|
||||
bindkey -k k1 select 0
|
||||
bindkey -k k2 select 1
|
||||
bindkey -k k3 select 2
|
||||
bindkey -k k4 select 3
|
||||
bindkey -k k5 select 4
|
||||
bindkey -k k6 select 5
|
||||
|
||||
bindkey -k k7 copy
|
||||
bindkey -k k8 paste .
|
||||
|
||||
bindkey -k k9 screen
|
||||
|
||||
#bindkey -k k8 kill
|
||||
#bindkey -k k9 screen
|
||||
#bindkey -k k; title
|
||||
#bindkey -k F1 prev
|
||||
#bindkey -k F2 next
|
||||
#unbind s
|
||||
bind s
|
|
@ -1,3 +1,5 @@
|
|||
# Dotfiles
|
||||
|
||||
My configs, its that simple
|
||||
|
||||
Some of the stuff is copied and modified from others' configs, including .config/sway, .config/waybar, and some files under .local/bin, so they are not under the same license.
|
||||
|
|
|
@ -0,0 +1,100 @@
|
|||
(use-modules
|
||||
(gnu)
|
||||
(gnu system nss)
|
||||
)
|
||||
(use-package-modules
|
||||
certs
|
||||
linux
|
||||
wm
|
||||
)
|
||||
(use-service-modules
|
||||
desktop
|
||||
networking
|
||||
xorg
|
||||
cups
|
||||
ssh
|
||||
)
|
||||
(operating-system
|
||||
(kernel linux-libre)
|
||||
(keyboard-layout (keyboard-layout "us" "altgr-intl"))
|
||||
(bootloader
|
||||
(bootloader-configuration
|
||||
(bootloader (bootloader
|
||||
(inherit grub-bootloader)
|
||||
(installer #~(const #t))
|
||||
))
|
||||
(keyboard-layout keyboard-layout)
|
||||
)
|
||||
)
|
||||
(host-name "PC")
|
||||
(mapped-devices (list
|
||||
(mapped-device
|
||||
(source (uuid "e836ef6e-97a8-442b-a025-e81ab58bbc04"))
|
||||
(target "fde")
|
||||
(type luks-device-mapping)
|
||||
)
|
||||
(mapped-device
|
||||
(source "matrix")
|
||||
(targets (list
|
||||
"matrix-rootvol"
|
||||
"matrix-swapvol"
|
||||
))
|
||||
(type lvm-device-mapping)
|
||||
)
|
||||
))
|
||||
(file-systems (append (list
|
||||
(file-system
|
||||
(type "btrfs")
|
||||
(mount-point "/")
|
||||
(device (file-system-label "root"))
|
||||
(flags '(no-atime))
|
||||
(options "space_cache=v2")
|
||||
(needed-for-boot? #t)
|
||||
(dependencies mapped-devices))
|
||||
) %base-file-systems))
|
||||
(swap-devices (list (swap-space (target (file-system-label "swap")))))
|
||||
(users (append (list
|
||||
(user-account
|
||||
(name "cobra")
|
||||
(comment "Skylar \"The Cobra\" Widulski")
|
||||
(group "users")
|
||||
(supplementary-groups '("audio" "cdrom" "kvm" "lp" "netdev" "tape" "video" "wheel")))
|
||||
) %base-user-accounts))
|
||||
(packages (append
|
||||
(map specification->package (list
|
||||
"nss-certs"
|
||||
"tor"
|
||||
"vim"
|
||||
"screen"
|
||||
"lynx"
|
||||
"curl"
|
||||
"wget"
|
||||
"net-tools"
|
||||
"sway"
|
||||
"waybar"
|
||||
"swaylock"
|
||||
"openssh"
|
||||
"i2pd"
|
||||
))
|
||||
(cons*
|
||||
%base-packages
|
||||
)
|
||||
))
|
||||
(timezone "America/New_York")
|
||||
(locale "en_US.utf8")
|
||||
(name-service-switch %mdns-host-lookup-nss)
|
||||
(services
|
||||
(cons*
|
||||
(service openssh-service-type)
|
||||
(service network-manager-service-type)
|
||||
(service wpa-supplicant-service-type)
|
||||
(service gpm-service-type)
|
||||
(service ntp-service-type)
|
||||
(service cups-service-type)
|
||||
(service tor-service-type)
|
||||
(service elogind-service-type)
|
||||
(screen-locker-service swaylock)
|
||||
%base-services
|
||||
)
|
||||
)
|
||||
)
|
Loading…
Reference in New Issue