migrate to stow

This commit is contained in:
2022-03-20 00:37:41 +03:00
parent 8544e93367
commit 2ef5b95984
41 changed files with 351 additions and 93 deletions

View File

@@ -0,0 +1,41 @@
font:
normal:
family: FiraCode Nerd Font
style: Regular
bold:
family: FiraCode Nerd Font
style: Bold
# Colors (Ayu Mirage)
colors:
# Default colors
primary:
background: "#202734"
foreground: "#CBCCC6"
# Normal colors
normal:
black: "#191E2A"
red: "#FF3333"
green: "#BAE67E"
yellow: "#FFA759"
blue: "#73D0FF"
magenta: "#FFD580"
cyan: "#95E6CB"
white: "#C7C7C7"
# Bright colors
bright:
black: "#686868"
red: "#F27983"
green: "#A6CC70"
yellow: "#FFCC66"
blue: "#5CCFE6"
magenta: "#FFEE99"
cyan: "#95E6CB"
white: "#FFFFFF"
mouse:
hide_when_typing: true
background_opacity: 0.95

View File

@@ -0,0 +1,37 @@
#! /bin/bash
declare -A aliases=(
["sudo"]="sudo "
["ls"]="ls --color=auto"
["l"]="ls"
["lah"]="ls -lAh"
["la"]="ls -A"
["ll"]="ls -l"
["ed"]="$EDITOR"
["c"]="clear"
["t"]="tmux"
["pacman"]="pacman --color auto"
["yay"]="yay --color auto"
["q"]="exit"
["tree"]="tree -C"
# Git
["g"]="git"
["ga"]="git add"
["gc"]="git commit"
["gp"]="git push"
["gl"]="git log"
["gs"]="git status"
["gd"]="git diff"
["gt"]="git tag"
["gch"]="git checkout"
["gpl"]="git pull"
["gb"]="git branch"
)
for alias in ${!aliases[@]}; do
cmd=${aliases[$alias]}
alias "$alias"="$cmd"
complete -F _complete_alias "$alias"
done

View File

@@ -0,0 +1,65 @@
[global]
monitor = 0
follow = mouse
### Geometry
width = 350
height = 150
origin = top-right
offset = 30x30
indicate_hidden = yes
shrink = no
separator_height = 0
padding = 16
horizontal_padding = 16
frame_width = 2
sort = no
idle_threshold = 120
font = Fira Code 8
line_height = 2
markup = full
format = <b>%s</b>\n%b
alignment = left
show_age_threshold = 60
word_wrap = yes
ignore_newline = no
stack_duplicates = false
hide_duplicate_count = yes
show_indicators = no
icon_position = right
text_icon_padding = 20
max_icon_size = 64
sticky_history = yes
history_length = 20
browser = /usr/bin/xdg-open
always_run_script = true
title = Dunst
class = Dunst
corner_radius = 8
mouse_left_click = do_action
mouse_right_click = close_current
[urgency_low]
timeout = 4
background = "#191e2a"
foreground = "#cbccc6"
frame_color = "#8bc34a"
[urgency_normal]
timeout = 8
background = "#191e2a"
foreground = "#cbccc6"
frame_color = "#ffa759"
[urgency_critical]
timeout = 0
background = "#191e2a"
foreground = "#cbccc6"
frame_color = "#ff3333"
[volume]
appname = "notify-on-volume"
history_ignore=yes

View File

@@ -0,0 +1,11 @@
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<alias>
<family>Monospace</family>
<prefer>
<family>Monospace</family>
<family>Noto Color Emoji</family>
</prefer>
</alias>
</fontconfig>

View File

@@ -0,0 +1,9 @@
font_family Fira Code Nerd Font
bold_font auto
italic_font auto
bold_italic_font auto
background #202734
foreground #CBCCC6
background_opacity 0.97

3
config/.config/lf/clean.sh Executable file
View File

@@ -0,0 +1,3 @@
#! /bin/bash
kitty +icat --clear --silent --transfer-mode file

24
config/.config/lf/lfrc Normal file
View File

@@ -0,0 +1,24 @@
### Settings
set info size
set dircounts # Show number of items inside of directory instead of its size
set icons
set incsearch
set number
set relativenumber
set wrapscroll
set previewer ~/.config/lf/preview.sh
set cleaner ~/.config/lf/clean.sh
### Commands
cmd mkdir ${{
mkdir -p "$1"
}}
### Mappings
map <enter> toggle
map <space> toggle
map <delete> delete
map <backspace2> delete
map d delete

14
config/.config/lf/preview.sh Executable file
View File

@@ -0,0 +1,14 @@
#! /bin/bash
file=$1
w=$2
h=$3
x=$4
y=$5
if [[ "$(file -Lb --mime-type "$file")" =~ ^image ]]; then
kitty +icat --silent --transfer-mode file --place "${w}x${h}@${x}x${y}" "$file"
exit 1
fi
pistol "$file"

View File

@@ -0,0 +1,114 @@
configuration {
modi: "drun";
font: "Iosevka 12";
show-icons: true;
}
* {
background: #202734;
background-alt: #191e2a;
foreground: #cbccc6;
yellow: #ffa759;
orange: #ffcc66;
red: #ff3333;
magenta: #ffd580;
violet: #ffee99;
blue: #73d0ff;
cyan: #95e6cb;
green: #859900;
normal-foreground: @foreground;
normal-background: @background;
active-foreground: @green;
active-background: @background;
urgent-foreground: @red;
urgent-background: @background;
selected-foreground: @magenta;
selected-normal-foreground: @selected-foreground;
selected-normal-background: @selected-background;
selected-active-foreground: @active-foreground;
selected-active-background: @selected-background;
selected-urgent-foreground: @urgent-foreground;
selected-urgent-background: @selected-background;
alternate-normal-background: @background;
alternate-normal-foreground: @alternate-foreground;
alternate-active-foreground: @active-foreground;
alternate-active-background: @background;
alternate-urgent-foreground: @urgent-foreground;
alternate-urgent-background: @background;
separatorcolor: @blue;
/* Main element styles */
border-color: @blue;
spacing: 2;
background-color: @background;
}
window {
width: 100%;
height: 100%;
background-color: transparent;
}
mainbox {
padding: 35% 20%;
}
/* entry, */
/* prompt { */
/* padding: 6px; */
/* } */
element {
padding: 10px;
color: @foreground;
}
element normal.normal {
/* background-color: @normal-background; */
/* text-color: @normal-foreground; */
}
element normal.urgent {
/* background-color: @urgent-background; */
/* text-color: @urgent-foreground; */
}
element normal.active {
/* background-color: @active-background; */
/* text-color: @active-foreground; */
}
element selected.normal {
/* background-color: @selected-normal-background; */
/* text-color: @selected-normal-foreground; */
}
element selected.urgent {
/* background-color: @selected-urgent-background; */
/* text-color: @selected-urgent-foreground; */
}
element selected.active {
/* background-color: @selected-active-background; */
/* text-color: @selected-active-foreground; */
}
element alternate.normal {
/* background-color: @alternate-normal-background; */
/* text-color: @alternate-normal-foreground; */
}
element alternate.urgent {
/* background-color: @alternate-urgent-background; */
/* text-color: @alternate-urgent-foreground; */
}
element alternate.active {
/* background-color: @alternate-active-background; */
/* text-color: @alternate-active-foreground; */
}

View File

@@ -0,0 +1,7 @@
[global]
username = "vhyobadxhsng3a70ucrzot5ui"
password_cmd = "cat ~/.config/spotify-password.secret"
device_name = "hacking-pc"
use_mpris = true

View File

@@ -0,0 +1,3 @@
[Default]
save_dir=$HOME/Pictures/Screenshots
save_filename_format=Screenshot-%Y%m%d-%H%M%S.png

226
config/.config/sway/config Normal file
View File

@@ -0,0 +1,226 @@
### Variables
# Main keys
set $mod Mod4
set $ctrl Control
set $alt Mod1
# Home row direction keys, like vim
set $left h
set $down j
set $up k
set $right l
# Your preferred terminal emulator
set $term kitty
# Your preferred application launcher
set $menu kickoff
# Workspaces
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"
set $bg #000000
set $br #ffa759
set $brbug #FF0000
set $textColor #cbccc6
# ____ _____ _ _ _____ ____ _ _
# / ___| ____| \ | | ____| _ \ / \ | |
# | | _| _| | \| | _| | |_) | / _ \ | |
# | |_| | |___| |\ | |___| _ < / ___ \| |___
# \____|_____|_| \_|_____|_| \_\/_/ \_\_____|
#
default_border pixel 2px
smart_borders on
focus_follows_mouse no
gaps inner 10
floating_modifier $mod normal
font FiraCode 10
xwayland enable
# class border backgr. text indicator child_border
client.focused $br $br $textColor $brbug $br
# Keyboard layout
input * {
xkb_layout "us,ru"
xkb_options "grp:win_space_toggle"
}
workspace "$ws1" output DVI-I-1
workspace "$ws2" output VGA-1
output VGA-1 pos 0 0
output DVI-I-1 pos 1920 0
# _ ____ ____ _ ___ ____ _ _____ ___ ___ _ _ ____
# / \ | _ \| _ \| | |_ _/ ___| / \|_ _|_ _/ _ \| \ | / ___|
# / _ \ | |_) | |_) | | | | | / _ \ | | | | | | | \| \___ \
# / ___ \| __/| __/| |___ | | |___ / ___ \| | | | |_| | |\ |___) |
# /_/ \_\_| |_| |_____|___\____/_/ \_\_| |___\___/|_| \_|____/
#
# Start applications with keybindings
bindsym $alt+f exec firefox-developer-edition
bindsym $alt+r exec kitty sh -c "lf"
bindsym $alt+s exec steam
# Default settings for some applications
for_window [class="mpv"] floating enable
for_window [class="mpv"] move absolute center
for_window [class="MuPDF"] floating enable
for_window [app_id="pavucontrol"] floating enable
for_window [app_id="blueman-manager"] floating enable
for_window [title="Picture-in-Picture"] {
sticky enable
move position 78ppt 65ppt
}
for_window [class="feh"] {
floating enable
move absolute center
resize set 1200 800
}
# _ _ _ _____ ___ ____ _____ _ ____ _____
# / \ | | | |_ _/ _ \/ ___|_ _|/ \ | _ \_ _|
# / _ \| | | | | || | | \___ \ | | / _ \ | |_) || |
# / ___ \ |_| | | || |_| |___) || |/ ___ \| _ < | |
# /_/ \_\___/ |_| \___/|____/ |_/_/ \_\_| \_\|_|
#
exec_always --no-startup-id xrdb -load $HOME/.Xresources
exec_always --no-startup-id $HOME/.config/waybar/launch.sh
exec_always --no-startup-id dunst
exec_always --no-startup-id $HOME/dotfiles/bin/set-wallpaper --restore
# _ _________ ______ ___ _ _ ____ ___ _ _ ____ ____
# | |/ / ____\ \ / / __ )_ _| \ | | _ \_ _| \ | |/ ___/ ___|
# | ' /| _| \ V /| _ \| || \| | | | | || \| | | _\___ \
# | . \| |___ | | | |_) | || |\ | |_| | || |\ | |_| |___) |
# |_|\_\_____| |_| |____/___|_| \_|____/___|_| \_|\____|____/
#
# Bind media keys on a keyboard to control volume and playback
bindsym XF86AudioRaiseVolume exec --no-startup-id pamixer -i 5 && $HOME/dotfiles/bin/notify-on-volume
bindsym XF86AudioLowerVolume exec --no-startup-id pamixer -d 5 && $HOME/dotfiles/bin/notify-on-volume
bindsym XF86AudioMute exec --no-startup-id pamixer -t
bindsym XF86AudioPlay exec playerctl play-pause
bindsym XF86AudioNext exec playerctl next
bindsym XF86AudioPrev exec playerctl previous
bindsym F8 exec pavucontrol
bindsym $mod+equal exec swaymsg 'gaps inner current plus 10'
bindsym $mod+minus exec swaymsg 'gaps inner current minus 10'
# Call swappy
bindsym $mod+Shift+s exec grim -g "$(slurp)" - | swappy -f -
# Start a terminal
bindsym $mod+Return exec $term
# Kill focused window
bindsym $mod+Shift+q kill
# Run wlogout to quit
bindsym $mod+Shift+e exec --no-startup-id wlogout -b 4 -m 450 -c 30
# Start your launcher
bindsym $mod+d exec $menu
# Reload the configuration file
bindsym $mod+Shift+r reload
# Move focus between tiling and floating areas
bindsym $mod+m focus mode_toggle
# Move focus
bindsym $mod+$left focus left
bindsym $mod+$down focus down
bindsym $mod+$up focus up
bindsym $mod+$right focus right
# Move focused windows
bindsym $mod+Shift+$left move left
bindsym $mod+Shift+$down move down
bindsym $mod+Shift+$up move up
bindsym $mod+Shift+$right move right
# Cycle through workspaces
bindsym $mod+Tab workspace next
bindsym $mod+Shift+Tab workspace prev
# 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
# Change split mode
bindsym $mod+g splith
bindsym $mod+v splitv
# Switch the current container between different layout styles
bindsym $mod+s layout stacking
bindsym $mod+w layout tabbed
bindsym $mod+e layout toggle split
# Toggle between layout modes
bindsym $mod+x layout toggle
# Make the current focus fullscreen
bindsym $mod+f fullscreen
# Toggle the current focus between tiling and floating mode
bindsym $mod+z floating toggle
### Resize mode
mode "resize" {
bindsym $left resize shrink width 100px
bindsym $down resize shrink height 100px
bindsym $up resize grow height 100px
bindsym $right resize grow width 100px
# Return to default mode
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+r mode "resize"
include /etc/sway/config.d/*

View File

@@ -0,0 +1,7 @@
# sway does not set DISPLAY/WAYLAND_DISPLAY in the systemd user environment
# See FS#63021
# Adapted from xorg's 50-systemd-user.sh, which achieves a similar goal.
exec systemctl --user import-environment DISPLAY WAYLAND_DISPLAY SWAYSOCK
exec hash dbus-update-activation-environment 2>/dev/null && \
dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK

View File

@@ -0,0 +1,46 @@
{
"position": "top",
"modules-left": [
"sway/workspaces",
"sway/mode"
],
"modules-right": [
"tray",
"pulseaudio",
"sway/language",
"network",
"clock"
],
"sway/workspaces": {
"all-output": true,
"format": "{index}"
},
"sway/mode": {
"format": "--{}--",
"tooltip": false
},
"pulseaudio": {
"tooltip": false,
"format-muted": "MUTE",
"on-click": "pavucontrol"
},
"sway/language": {
"tooltip": false
},
"network": {
"format": "{icon}",
"format-icons": [
""
],
"format-disconnected": "No network",
"tooltip": false
},
"clock": {
"format": "{:%d %b %H:%M, %A}",
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>"
},
"tray": {
"icon-size": 16,
"spacing": 10
}
}

View File

@@ -0,0 +1,5 @@
#! /bin/bash
killall waybar
waybar

View File

@@ -0,0 +1,51 @@
/* Colors */
@define-color background #191e2a;
@define-color background-alt #202734;
@define-color foreground #cbccc6;
@define-color primary #ffa759;
window#waybar {
background: @background;
color: @foreground;
font-family: Iosevka, "Fira Code";
font-size: 14px;
}
#workspaces button {
color: @foreground;
border-radius: 0;
}
#workspaces button.focused {
background: @background-alt;
color: @primary;
}
#workspaces button.urgent {
background: @primary;
}
#mode {
margin-left: 10px;
color: @primary;
}
#window {
margin-left: 10px;
}
#network {
font-family: "Font Awesome 6 Free Solid";
}
#tray,
#pulseaudio,
#language,
#network,
#clock {
margin: 8px;
}
#pulseaudio.muted {
color: @primary;
}

View File

@@ -0,0 +1,24 @@
{
"label" : "lock",
"action" : "swaylock",
"text" : "Lock",
"keybind" : "l"
}
{
"label" : "logout",
"action" : "swaymsg exit",
"text" : "Logout",
"keybind" : "e"
}
{
"label" : "shutdown",
"action" : "systemctl poweroff",
"text" : "Shutdown",
"keybind" : "s"
}
{
"label" : "reboot",
"action" : "systemctl reboot",
"text" : "Reboot",
"keybind" : "r"
}

View File

@@ -0,0 +1,66 @@
* {
background-image: none;
}
window {
background-color: #191e2a;
}
button {
color: #cbccc6;
border: none;
background-color: #202734;
background-repeat: no-repeat;
background-position: center;
background-size: 20%;
font-size: 15px;
box-shadow: 0 5px 4px 4px rgba(0, 0, 0, 0.1);
text-shadow: none;
}
button:focus,
button:active,
button:hover {
background-color: #ffa759;
outline-style: none;
}
#lock {
background-image: image(
url("/usr/share/wlogout/icons/lock.png"),
url("/usr/local/share/wlogout/icons/lock.png")
);
}
#logout {
background-image: image(
url("/usr/share/wlogout/icons/logout.png"),
url("/usr/local/share/wlogout/icons/logout.png")
);
}
#suspend {
background-image: image(
url("/usr/share/wlogout/icons/suspend.png"),
url("/usr/local/share/wlogout/icons/suspend.png")
);
}
#hibernate {
background-image: image(
url("/usr/share/wlogout/icons/hibernate.png"),
url("/usr/local/share/wlogout/icons/hibernate.png")
);
}
#shutdown {
background-image: image(
url("/usr/share/wlogout/icons/shutdown.png"),
url("/usr/local/share/wlogout/icons/shutdown.png")
);
}
#reboot {
background-image: image(
url("/usr/share/wlogout/icons/reboot.png"),
url("/usr/local/share/wlogout/icons/reboot.png")
);
}