Dotfiles config update (2021-12-11)
This commit is contained in:
parent
4aeb35bcee
commit
b2fe9fd4b5
311
.config/sway/config
Normal file
311
.config/sway/config
Normal file
|
@ -0,0 +1,311 @@
|
|||
# This file has been auto-generated by Sway.
|
||||
# It will not be overwritten, so edit it as you like.
|
||||
#
|
||||
# sway config file (v4)
|
||||
#
|
||||
set $mod Mod4
|
||||
|
||||
# Font for window titles. Will also be used by the bar unless a different font
|
||||
# is used in the bar {} block below.
|
||||
#font pango:monospace 10
|
||||
font pango:Noto Sans 10
|
||||
#font pango:Ubuntu 10.5
|
||||
|
||||
# This font is widely installed, provides lots of unicode glyphs, right-to-left
|
||||
# text rendering and scalability on retina/hidpi displays (thanks to pango).
|
||||
#font pango:DejaVu Sans Mono 9
|
||||
|
||||
# The combination of xss-lock, nm-applet and pactl is a popular choice, so
|
||||
# they are included here as an example. Modify as you see fit.
|
||||
|
||||
# xss-lock grabs a logind suspend inhibit lock and will use i3lock to lock the
|
||||
# screen before suspend. Use loginctl lock-session to lock your screen.
|
||||
#exec --no-startup-id xss-lock --transfer-sleep-lock -- i3lock --nofork
|
||||
|
||||
# NetworkManager is the most popular way to manage wireless networks on Linux,
|
||||
# and nm-applet is a desktop environment-independent system tray GUI for it.
|
||||
#exec --no-startup-id connman-gtk --tray &
|
||||
exec --no-startup-id nm-applet
|
||||
|
||||
# Applet for Audio
|
||||
exec --no-startup-id pnmixer -t &
|
||||
|
||||
# Configure screens and resolution
|
||||
exec --no-startup-id ~/.config/sway/startwlrrandr.sh &
|
||||
|
||||
# Load compton or picom
|
||||
#exec --no-startup-id compton &
|
||||
#exec --no-startup-id "sleep 15 && picom &"
|
||||
|
||||
# Configure wallpaper
|
||||
exec --no-startup-id "swaybg -i ~/wallpapers/dark-city.jpg -m fill"
|
||||
|
||||
# Configure xscreensaver (don't work on Wayland)
|
||||
exec --no-startup-id "sleep 5 && xscreensaver &"
|
||||
|
||||
# Clipboard (Diodon)
|
||||
exec --no-startup-id diodon &
|
||||
|
||||
# Use pactl to adjust volume in PulseAudio.
|
||||
#set $refresh_i3status killall -SIGUSR1 i3status
|
||||
bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +5% #&& $refresh_i3status
|
||||
bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -5% #&& $refresh_i3status
|
||||
bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle #&& $refresh_i3status
|
||||
bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle #&& $refresh_i3status
|
||||
|
||||
# Use Mouse+$mod to drag floating windows to their wanted position
|
||||
floating_modifier $mod
|
||||
|
||||
# New windows without borders
|
||||
#new_window 1pixel
|
||||
#new_window pixel 3
|
||||
|
||||
# start a terminal
|
||||
#bindsym $mod+Return exec i3-sensible-terminal
|
||||
#bindsym $mod+Return exec xterm
|
||||
bindsym $mod+Return exec alacritty
|
||||
|
||||
# kill focused window
|
||||
bindsym $mod+Shift+q kill
|
||||
|
||||
# start dmenu (a program launcher)
|
||||
bindsym $mod+d exec --no-startup-id dmenu_run
|
||||
# A more modern dmenu replacement is rofi:
|
||||
# bindcode $mod+40 exec "rofi -modi drun,run -show drun"
|
||||
# There also is i3-dmenu-desktop which only displays applications shipping a
|
||||
# .desktop file. It is a wrapper around dmenu, so you need that installed.
|
||||
# bindcode $mod+40 exec --no-startup-id i3-dmenu-desktop
|
||||
|
||||
# NetworkManager
|
||||
#bindsym $mod+c exec --no-startup-id connman-gtk --no-icon
|
||||
bindsym $mod+c exec --no-startup-id nm-connection-editor
|
||||
|
||||
# Run applications
|
||||
bindsym $mod+o exec --no-startup-id wofi --show drun
|
||||
bindsym $mod+q exec --no-startup-id rofi -show window
|
||||
bindsym $mod+x exec --no-startup-id wdisplays
|
||||
bindsym $mod+b exec --no-startup-id firefox
|
||||
bindsym $mod+n exec --no-startup-id pcmanfm
|
||||
bindsym $mod+p exec --no-startup-id wofi --show run
|
||||
bindsym $mod+g exec --no-startup-id geany
|
||||
bindsym $mod+m exec --no-startup-id telegram
|
||||
bindsym $mod+z exec --no-startup-id alacritty -e wf-recorder
|
||||
bindsym $mod+u exec --no-startup-id xterm
|
||||
bindsym $mod+t exec --no-startup-id ~/.config/sway/wayland-screenshot
|
||||
bindsym $mod+i exec --no-startup-id lxappearance
|
||||
|
||||
# change focus
|
||||
bindsym $mod+j focus left
|
||||
bindsym $mod+k focus down
|
||||
bindsym $mod+l focus up
|
||||
bindsym $mod+ntilde focus right
|
||||
|
||||
# alternatively, you can use the cursor keys:
|
||||
bindsym $mod+Left focus left
|
||||
bindsym $mod+Down focus down
|
||||
bindsym $mod+Up focus up
|
||||
bindsym $mod+Right focus right
|
||||
|
||||
# move focused window
|
||||
bindsym $mod+Shift+j move left
|
||||
bindsym $mod+Shift+k move down
|
||||
bindsym $mod+Shift+l move up
|
||||
bindsym $mod+Shift+ntilde move right
|
||||
|
||||
# lock screen
|
||||
set $swaylockwall ~/.config/sway/down-screen.sh
|
||||
bindsym $mod+Ctrl+Shift+l exec --no-startup-id $swaylockwall
|
||||
|
||||
# close session
|
||||
#bindsym Mod1+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'"
|
||||
bindsym Mod1+Shift+e exec "swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -B 'Yes, exit i3' 'swaymsg exit'"
|
||||
|
||||
# shutdown / restart / suspend...
|
||||
set $mode_system System (l) lock, (e) logout, (r) reboot, (CTRL+s) shutdown
|
||||
|
||||
mode "$mode_system" {
|
||||
bindsym l exec --no-startup-id $swaylockwall, mode "default"
|
||||
bindsym e exec --no-startup-id i3-msg exit, mode "default"
|
||||
bindsym r exec --no-startup-id /sbin/reboot, mode "default"
|
||||
bindsym Ctrl+s exec --no-startup-id /sbin/poweroff, mode "default"
|
||||
|
||||
# back to normal: Enter or Escape
|
||||
bindsym Return mode "default"
|
||||
bindsym Escape mode "default"
|
||||
}
|
||||
|
||||
bindsym $mod+BackSpace mode "$mode_system"
|
||||
|
||||
# alternatively, you can use the cursor keys:
|
||||
bindsym $mod+Shift+Left move left
|
||||
bindsym $mod+Shift+Down move down
|
||||
bindsym $mod+Shift+Up move up
|
||||
bindsym $mod+Shift+Right move right
|
||||
|
||||
# split in horizontal orientation
|
||||
bindsym $mod+h split h
|
||||
|
||||
# split in vertical orientation
|
||||
bindsym $mod+v split v
|
||||
|
||||
# enter fullscreen mode for the focused container
|
||||
bindsym $mod+f fullscreen toggle
|
||||
|
||||
# change container layout (stacked, tabbed, toggle split)
|
||||
bindsym $mod+s layout stacking
|
||||
bindsym $mod+w layout tabbed
|
||||
bindsym $mod+e layout toggle split
|
||||
|
||||
# toggle tiling / floating
|
||||
bindsym $mod+Shift+space floating toggle
|
||||
|
||||
# change focus between tiling / floating windows
|
||||
bindsym $mod+space focus mode_toggle
|
||||
|
||||
# focus the parent container
|
||||
bindsym $mod+a focus parent
|
||||
|
||||
# focus the child container
|
||||
#bindsym $mod+d focus child
|
||||
|
||||
# sway gaps config
|
||||
gaps inner 6
|
||||
gaps outer 2
|
||||
|
||||
# Disable borders
|
||||
#default_border none
|
||||
default_border pixel 2
|
||||
|
||||
# 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 1:term
|
||||
bindsym $mod+2 workspace number 2:www
|
||||
bindsym $mod+3 workspace number 3:chat
|
||||
bindsym $mod+4 workspace number 4:files
|
||||
bindsym $mod+5 workspace number 5:media
|
||||
bindsym $mod+6 workspace number 6:game
|
||||
bindsym $mod+7 workspace number 7:mail
|
||||
bindsym $mod+8 workspace number 8:dev
|
||||
bindsym $mod+9 workspace number 9:vm
|
||||
bindsym $mod+0 workspace number 10:all
|
||||
|
||||
# move focused container to workspace
|
||||
bindsym $mod+Shift+1 move container to workspace number 1:term
|
||||
bindsym $mod+Shift+2 move container to workspace number 2:www
|
||||
bindsym $mod+Shift+3 move container to workspace number 3:chat
|
||||
bindsym $mod+Shift+4 move container to workspace number 4:files
|
||||
bindsym $mod+Shift+5 move container to workspace number 5:media
|
||||
bindsym $mod+Shift+6 move container to workspace number 6:game
|
||||
bindsym $mod+Shift+7 move container to workspace number 7:mail
|
||||
bindsym $mod+Shift+8 move container to workspace number 8:dev
|
||||
bindsym $mod+Shift+9 move container to workspace number 9:vm
|
||||
bindsym $mod+Shift+0 move container to workspace number 10:all
|
||||
|
||||
# force a window on a named workspace
|
||||
assign [class="Firefox"] 2:www
|
||||
assign [class="mpv"] 5:media
|
||||
assign [class="vlc"] 5:media
|
||||
assign [class="Ristretto"] 5:media
|
||||
assign [class="Gimp"] 5:media
|
||||
assign [class="Gimp-2.10"] 5:media
|
||||
assign [class="Mozilla VPN"] 2:www
|
||||
assign [class="XTerm"] 1:term
|
||||
assign [class="VirtualBoxVM"] 9:vm
|
||||
assign [class="VirtualBox Machine"] 9:vm
|
||||
assign [class="Steam"] 6:game
|
||||
assign [class="Telegram"] 3:chat
|
||||
assign [class="Signal"] 3:chat
|
||||
assign [class="Pcmanfm"] 4:files
|
||||
assign [class="Mousepad"] 8:dev
|
||||
assign [class="Geany"] 8:dev
|
||||
|
||||
# force floatin windows
|
||||
for_window [class="Pavucontrol" instance="pavucontrol"] floating enable
|
||||
for_window [class="Volume Control" instance="pavucontrol"] floating enable
|
||||
for_window [class="Nitrogen" instance="nitrogen"] floating enable
|
||||
for_window [class="Lxrandr" instance="lxrandr"] floating enable
|
||||
for_window [class="Connman-gtk" instance="connman-gtk"] floating enable
|
||||
for_window [class="Network Settings" instance="connman-gtk"] floating enable
|
||||
for_window [class="Nm-connection-editor" instance="nm-connection-editor"] floating enable
|
||||
for_window [class="vlc" instance="vlc"] floating enable
|
||||
for_window [class="mpv" instance="gl"] floating enable
|
||||
for_window [class="Engrampa" instance="engrampa"] floating enable
|
||||
for_window [class="Archive Manager" instance="engrampa"] floating enable
|
||||
for_window [class="Xarchiver" instance="xarchiver"] floating enable
|
||||
for_window [class="Ristretto" instance="ristretto"] floating enable
|
||||
for_window [class="Mozilla VPN" instance="mozillavpn"] floating enable
|
||||
for_window [class="Lxappearance" instance="lxappearance"] floating enable
|
||||
for_window [class="wdisplays" instance="wdisplays"] floating enable
|
||||
for_window [app_id="zenity"] floating enable
|
||||
|
||||
# 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 "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'"
|
||||
bindsym $mod+Shift+e exec "swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit Sway? This will end your Wayland session.' -B 'Yes, exit sway' 'swaymsg 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 j resize shrink width 10 px or 10 ppt
|
||||
bindsym k resize grow height 10 px or 10 ppt
|
||||
bindsym l resize shrink height 10 px or 10 ppt
|
||||
bindsym ntilde resize grow width 10 px or 10 ppt
|
||||
|
||||
# same bindings, but for the arrow keys
|
||||
bindsym Left resize shrink width 10 px or 10 ppt
|
||||
bindsym Down resize grow height 10 px or 10 ppt
|
||||
bindsym Up resize shrink height 10 px or 10 ppt
|
||||
bindsym Right 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"
|
||||
|
||||
# Input layout
|
||||
input * {
|
||||
#xkb_layout "us"
|
||||
xkb_layout "es"
|
||||
#xkb_variant "colemak"
|
||||
}
|
||||
|
||||
# Start i3bar to display a workspace bar (plus the system information i3status
|
||||
# finds out, if available)
|
||||
bar {
|
||||
position top
|
||||
swaybar_command waybar
|
||||
workspace_buttons yes
|
||||
#tray_output DisplayPort-0
|
||||
colors {
|
||||
separator #AAAAAA
|
||||
background #222133
|
||||
statusline #FFFFFF
|
||||
}
|
||||
}
|
||||
client.focused #664477 #664477 #cccccc #5b399e
|
||||
client.focused_inactive #5b399e #5b399e #cccccc #A074C4
|
||||
client.unfocused #222133 #222133 #AAAAAA #A074C4
|
||||
client.urgent #CE4045 #CE4045 #5b399e #DCCD69
|
19
.config/sway/down-screen.sh
Executable file
19
.config/sway/down-screen.sh
Executable file
|
@ -0,0 +1,19 @@
|
|||
#!/bin/bash
|
||||
|
||||
###############################################################
|
||||
# down-daemon (down-screen) - Daemon to shutdown the screen #
|
||||
# Date: 19-11-2020 #
|
||||
# Author: q3aql #
|
||||
# Contact: q3aql@duck.com #
|
||||
###############################################################
|
||||
VERSION="1.0"
|
||||
M_DATE="191120"
|
||||
|
||||
# Variable
|
||||
endProcess=0
|
||||
|
||||
# Run screensaver
|
||||
sleep 3
|
||||
echo "* Forcing screen to shutdown..."
|
||||
#xset dpms force off
|
||||
xscreensaver-command -prev
|
15
.config/sway/startwlrrandr.sh
Executable file
15
.config/sway/startwlrrandr.sh
Executable file
|
@ -0,0 +1,15 @@
|
|||
#!/bin/bash
|
||||
|
||||
scan_rel=0
|
||||
|
||||
sleep 2
|
||||
#while [ ${scan_rel} -eq 0 ] ; do
|
||||
# Primer monitor
|
||||
#wlr-randr --output DP-1 --custom-mode 1280x1024@75Hz --pos 288,0
|
||||
# Segundo monitor
|
||||
#wlr-randr --output DP-2 --custom-mode 1280x1024@75Hz --transform 90 --pos 1568,0
|
||||
#sleep 2
|
||||
#done
|
||||
sleep 2
|
||||
wlr-randr --output DP-1 --custom-mode 1280x1024@75Hz --pos 288,0
|
||||
wlr-randr --output DP-2 --custom-mode 1280x1024@75Hz --transform 90 --pos 1568,0
|
72
.config/sway/wayland-screenshot
Executable file
72
.config/sway/wayland-screenshot
Executable file
|
@ -0,0 +1,72 @@
|
|||
#!/bin/bash
|
||||
|
||||
FILEDIR=~/Downloads
|
||||
OPTION=()
|
||||
|
||||
values=$(zenity \
|
||||
--title=wayland-screenshot \
|
||||
--text="Option" \
|
||||
--forms \
|
||||
--add-combo="Mode" \
|
||||
--combo-values="All screen|Specific window|Specific area" \
|
||||
--add-combo="Include cursor[default: no]" \
|
||||
--combo-values="no|yes" \
|
||||
--add-entry="time to wait[default: 0s]" \
|
||||
--add-combo="Copy to clipboard[default: yes]" \
|
||||
--combo-values="yes|no" \
|
||||
)
|
||||
|
||||
result=$?
|
||||
|
||||
mode=$(echo $values | cut -d '|' -f 1)
|
||||
cursor=$(echo $values | cut -d '|' -f 2)
|
||||
wait=$(echo $values | cut -d '|' -f 3)
|
||||
clipboard=$(echo $values | cut -d '|' -f 4)
|
||||
|
||||
if [ "$result" -eq 1 ];then # select cancel
|
||||
echo "canceling"
|
||||
exit
|
||||
fi
|
||||
|
||||
if [ ! -z "$cursor" ] && [ "$cursor" == yes ];then
|
||||
OPTION+="-c"
|
||||
fi
|
||||
|
||||
if [ -z "$mode" ] ;then # select nothing
|
||||
echo "mode is null"
|
||||
zenity \
|
||||
--title=wayland-screenshot \
|
||||
--width=200 \
|
||||
--warning \
|
||||
--text="Mode empty"
|
||||
exit
|
||||
fi
|
||||
|
||||
if [ ! -z "$wait" ];then
|
||||
sleep $wait
|
||||
fi
|
||||
|
||||
if [ "$mode" == "All screen" ];then # select All screen
|
||||
true
|
||||
elif [ "$mode" == "Specific window" ];then # select specify window
|
||||
GEO="$(swaymsg -t get_tree | jq -r '.. | select(.pid? and .visible?) | .rect | "\(.x),\(.y) \(.width)x\(.height)"' | slurp)"
|
||||
elif [ "$mode" == "Specific area" ];then # select specfy area
|
||||
GEO="$(slurp)"
|
||||
else # error
|
||||
echo $mode
|
||||
fi
|
||||
|
||||
if [ -z "$clipboard" ] || [ "$clipboard" == yes ];then
|
||||
if [ -z "$GEO" ]; then
|
||||
grim $OPTION - | wl-copy;
|
||||
else
|
||||
grim $OPTION -g "$GEO" - | wl-copy;
|
||||
fi
|
||||
else
|
||||
if [ -z "$GEO" ]; then
|
||||
grim $OPTION $FILEDIR/Screenshot_$(date +%F_%H.%M.%S).png
|
||||
else
|
||||
grim $OPTION -g "$GEO" $FILEDIR/Screenshot_$(date +%F_%H.%M.%S).png
|
||||
fi
|
||||
fi
|
||||
|
158
.config/waybar/config
Normal file
158
.config/waybar/config
Normal file
|
@ -0,0 +1,158 @@
|
|||
{
|
||||
// "layer": "top", // Waybar at top layer
|
||||
"position": "top", // Waybar position (top|bottom|left|right)
|
||||
"height": 28, // Waybar height (to be removed for auto height)
|
||||
// "width": 1280, // Waybar width
|
||||
// Choose the order of the modules
|
||||
"modules-left": ["sway/workspaces", "sway/mode", "custom/media"],
|
||||
// "modules-center": ["sway/window"],
|
||||
//"modules-right": ["pulseaudio", "network", "cpu", "memory", "temperature", "backlight", "sway/language", "battery", "battery#bat2", "clock", "tray"],
|
||||
"modules-right": ["custom/kernel", "custom/cpu", "custom/memory", "custom/disk", "pulseaudio", "sway/language", "network", "custom/clock", "tray"],
|
||||
// Modules configuration
|
||||
// "sway/workspaces": {
|
||||
// "disable-scroll": true,
|
||||
// "all-outputs": true,
|
||||
// "format": "{name}: {icon}",
|
||||
// "format-icons": {
|
||||
// "1": "",
|
||||
// "2": "",
|
||||
// "3": "",
|
||||
// "4": "",
|
||||
// "5": "",
|
||||
// "urgent": "",
|
||||
// "focused": "",
|
||||
// "default": ""
|
||||
// }
|
||||
// },
|
||||
"sway/mode": {
|
||||
"format": "<span style=\"italic\">{}</span>"
|
||||
},
|
||||
|
||||
"custom/kernel": {
|
||||
"format": "{}",
|
||||
//"max-length": 12,
|
||||
"interval": 10,
|
||||
"exec": "~/.config/waybar/scripts/kernel_version.sh",
|
||||
},
|
||||
|
||||
"custom/clock": {
|
||||
"format": "{}",
|
||||
//"max-length": 12,
|
||||
"interval": 20,
|
||||
"exec": "date '+%h %d, %H:%M'",
|
||||
},
|
||||
|
||||
"custom/cpu": {
|
||||
"format": "{}",
|
||||
//"max-length": 12,
|
||||
"interval": 2,
|
||||
"exec": "~/.config/waybar/scripts/cpu_info.sh",
|
||||
},
|
||||
|
||||
"custom/memory": {
|
||||
"format": "{}",
|
||||
//"max-length": 12,
|
||||
"interval": 5,
|
||||
"exec": "~/.config/waybar/scripts/mem_info.sh",
|
||||
},
|
||||
|
||||
"custom/disk": {
|
||||
"format": "{}",
|
||||
//"max-length": 12,
|
||||
"interval": 10,
|
||||
"exec": "~/.config/waybar/scripts/disk_info.sh",
|
||||
},
|
||||
|
||||
"idle_inhibitor": {
|
||||
"format": "{icon}",
|
||||
"format-icons": {
|
||||
"activated": "",
|
||||
"deactivated": ""
|
||||
}
|
||||
},
|
||||
"tray": {
|
||||
// "icon-size": 21,
|
||||
"spacing": 20
|
||||
},
|
||||
"clock": {
|
||||
// "timezone": "America/New_York",
|
||||
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>",
|
||||
"format-alt": "{:%Y-%m-%d}"
|
||||
},
|
||||
"cpu": {
|
||||
"format": "{usage}% ",
|
||||
"tooltip": false
|
||||
},
|
||||
"memory": {
|
||||
"format": "{}% "
|
||||
},
|
||||
"temperature": {
|
||||
// "thermal-zone": 2,
|
||||
// "hwmon-path": "/sys/class/hwmon/hwmon2/temp1_input",
|
||||
"critical-threshold": 80,
|
||||
// "format-critical": "{temperatureC}°C {icon}",
|
||||
"format": "{temperatureC}°C {icon}",
|
||||
"format-icons": ["", "", ""]
|
||||
},
|
||||
"backlight": {
|
||||
// "device": "acpi_video1",
|
||||
"format": "{percent}% {icon}",
|
||||
"format-icons": ["", ""]
|
||||
},
|
||||
"battery": {
|
||||
"states": {
|
||||
// "good": 95,
|
||||
"warning": 30,
|
||||
"critical": 15
|
||||
},
|
||||
"format": "{capacity}% {icon}",
|
||||
"format-charging": "{capacity}% ",
|
||||
"format-plugged": "{capacity}% ",
|
||||
"format-alt": "{time} {icon}",
|
||||
// "format-good": "", // An empty format will hide the module
|
||||
// "format-full": "",
|
||||
"format-icons": ["", "", "", "", ""]
|
||||
},
|
||||
"battery#bat2": {
|
||||
"bat": "BAT2"
|
||||
},
|
||||
"network": {
|
||||
// "interface": "wlp2*", // (Optional) To force the use of this interface
|
||||
"format-wifi": "{essid} ({signalStrength}%) ",
|
||||
"format-ethernet": "{ifname}: {ipaddr}/{cidr} ",
|
||||
"format-linked": "{ifname} (No IP) ",
|
||||
"format-disconnected": "Disconnected ⚠",
|
||||
"format-alt": "{ifname}: {ipaddr}/{cidr}"
|
||||
},
|
||||
"pulseaudio": {
|
||||
// "scroll-step": 1, // %, can be a float
|
||||
"format": "{volume}% {icon} {format_source}",
|
||||
"format-bluetooth": "{volume}% {icon} {format_source}",
|
||||
"format-bluetooth-muted": " {icon} {format_source}",
|
||||
"format-muted": " {format_source}",
|
||||
"format-source": "{volume}% ",
|
||||
"format-source-muted": "",
|
||||
"format-icons": {
|
||||
"headphone": "",
|
||||
"hands-free": "",
|
||||
"headset": "",
|
||||
"phone": "",
|
||||
"portable": "",
|
||||
"car": "",
|
||||
"default": ["", "", ""]
|
||||
},
|
||||
"on-click": "pavucontrol"
|
||||
},
|
||||
"custom/media": {
|
||||
"format": "{icon} {}",
|
||||
"return-type": "json",
|
||||
"max-length": 40,
|
||||
"format-icons": {
|
||||
"spotify": "",
|
||||
"default": "🎜"
|
||||
},
|
||||
"escape": true,
|
||||
"exec": "$HOME/.config/waybar/mediaplayer.py 2> /dev/null" // Script in resources folder
|
||||
// "exec": "$HOME/.config/waybar/mediaplayer.py --player spotify 2> /dev/null" // Filter player based on name
|
||||
}
|
||||
}
|
5
.config/waybar/scripts/cpu_info.sh
Executable file
5
.config/waybar/scripts/cpu_info.sh
Executable file
|
@ -0,0 +1,5 @@
|
|||
#!/bin/sh
|
||||
TEMP=$(sensors | grep 'Package id 0:\|Tdie' | grep ':[ ]*+[0-9]*.[0-9]*°C' -o | grep '+[0-9]*.[0-9]*°C' -o)
|
||||
#CPU_USAGE=$(mpstat 1 1 | awk '/Average:/ {printf("%s\n", $(NF-9))}')
|
||||
CPU_USAGE=$(~/.config/i3blocks/cpu/cpu_load.sh -p)
|
||||
echo "$CPU_USAGE $TEMP" | awk '{ printf(" CPU:%6s @ %s \n"), $1, $2 }'
|
3
.config/waybar/scripts/disk_info.sh
Executable file
3
.config/waybar/scripts/disk_info.sh
Executable file
|
@ -0,0 +1,3 @@
|
|||
#!/bin/bash
|
||||
|
||||
df -h / | awk '/\//{ printf(" %4s / %s \n", $4, $2) }'
|
34
.config/waybar/scripts/kernel_version.sh
Executable file
34
.config/waybar/scripts/kernel_version.sh
Executable file
|
@ -0,0 +1,34 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Parameters
|
||||
longNumber=2
|
||||
kernelCommand="uname -r"
|
||||
archCommand=$(uname -m)
|
||||
|
||||
# Kernel version
|
||||
kernelVersion=""
|
||||
count=1
|
||||
|
||||
# Extract numbers of kernel version
|
||||
kernelVersionTemp=$(uname -r | cut -d "." -f ${count})
|
||||
kernelVersionTempDot="${kernelVersionTemp}"
|
||||
kernelVersion="${kernelVersion}${kernelVersionTempDot}"
|
||||
count=$(expr ${count} + 1)
|
||||
|
||||
while [ ${count} -le ${longNumber} ] ; do
|
||||
kernelVersionTemp=$(uname -r | cut -d "." -f ${count})
|
||||
kernelVersionTempDot=".${kernelVersionTemp}"
|
||||
kernelVersion="${kernelVersion}${kernelVersionTempDot}"
|
||||
count=$(expr ${count} + 1)
|
||||
done
|
||||
|
||||
kernelVersionTemp=$(uname -r | cut -d "." -f ${count} | cut -d "-" -f 1)
|
||||
kernelVersionTempDot=".${kernelVersionTemp}"
|
||||
kernelVersion=${kernelVersion}${kernelVersionTempDot}
|
||||
|
||||
# Apply arch
|
||||
#kernelVersion=${kernelVersion}-${archCommand}
|
||||
kernelVersion=${kernelVersion}
|
||||
#echo "Kernel: Linux ${kernelVersion} "
|
||||
echo "Linux ${kernelVersion} "
|
||||
|
3
.config/waybar/scripts/mem_info.sh
Executable file
3
.config/waybar/scripts/mem_info.sh
Executable file
|
@ -0,0 +1,3 @@
|
|||
#!/bin/bash
|
||||
|
||||
free -h | awk '/Mem:/ { printf(" %5s / %s \n", $3, $2) }'
|
248
.config/waybar/style.css
Normal file
248
.config/waybar/style.css
Normal file
|
@ -0,0 +1,248 @@
|
|||
* {
|
||||
border: none;
|
||||
border-radius: 0;
|
||||
/* `otf-font-awesome` is required to be installed for icons */
|
||||
font-family: Noto Sans, Roboto, Helvetica, Arial, sans-serif;
|
||||
font-size: 13px;
|
||||
min-height: 0;
|
||||
}
|
||||
|
||||
window#waybar {
|
||||
background-color: rgba(43, 48, 59, 1);
|
||||
border-bottom: 1px solid rgba(100, 114, 125, 0.5);
|
||||
color: #ffffff;
|
||||
transition-property: background-color;
|
||||
transition-duration: .5s;
|
||||
}
|
||||
|
||||
window#waybar.hidden {
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
/*
|
||||
window#waybar.empty {
|
||||
background-color: transparent;
|
||||
}
|
||||
window#waybar.solo {
|
||||
background-color: #FFFFFF;
|
||||
}
|
||||
*/
|
||||
|
||||
window#waybar.termite {
|
||||
background-color: #3F3F3F;
|
||||
}
|
||||
|
||||
window#waybar.chromium {
|
||||
background-color: #000000;
|
||||
border: none;
|
||||
}
|
||||
|
||||
#workspaces button {
|
||||
padding: 0 5px;
|
||||
background-color: transparent;
|
||||
color: #ffffff;
|
||||
/* Use box-shadow instead of border so the text isn't offset */
|
||||
box-shadow: inset 0 -3px transparent;
|
||||
border-radius: 0.5;
|
||||
}
|
||||
|
||||
/* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */
|
||||
#workspaces button:hover {
|
||||
background: rgba(0, 0, 0, 0.2);
|
||||
box-shadow: inset 0 -3px #ffffff;
|
||||
}
|
||||
|
||||
#workspaces button.focused {
|
||||
background-color: #64727D;
|
||||
box-shadow: inset 0 -3px #ffffff;
|
||||
}
|
||||
|
||||
#workspaces button.urgent {
|
||||
background-color: #eb4d4b;
|
||||
}
|
||||
|
||||
#mode {
|
||||
background-color: #64727D;
|
||||
border-bottom: 3px solid #ffffff;
|
||||
}
|
||||
|
||||
#clock,
|
||||
#battery,
|
||||
#cpu,
|
||||
#memory,
|
||||
#temperature,
|
||||
#backlight,
|
||||
#network,
|
||||
#pulseaudio,
|
||||
#custom-media,
|
||||
#tray,
|
||||
#mode,
|
||||
#idle_inhibitor,
|
||||
#mpd {
|
||||
padding: 0 10px;
|
||||
margin: 0 4px;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
#window,
|
||||
#workspaces {
|
||||
margin: 0 4px;
|
||||
}
|
||||
|
||||
/* If workspaces is the leftmost module, omit left margin */
|
||||
.modules-left > widget:first-child > #workspaces {
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
/* If workspaces is the rightmost module, omit right margin */
|
||||
.modules-right > widget:last-child > #workspaces {
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
#clock {
|
||||
background-color: #64727D;
|
||||
}
|
||||
|
||||
#custom-disk {
|
||||
color: #C14F3F;
|
||||
margin: 0 2px;
|
||||
}
|
||||
|
||||
#custom-kernel {
|
||||
color: #51A6E3;
|
||||
margin: 0 2px;
|
||||
}
|
||||
|
||||
#custom-cpu {
|
||||
color: #B63CEC;
|
||||
margin: 0 2px;
|
||||
}
|
||||
|
||||
#custom-memory {
|
||||
color: #CADD8A;
|
||||
margin: 0 2px;
|
||||
}
|
||||
|
||||
#custom-clock {
|
||||
color: #51A6E3;
|
||||
margin: 0 2px;
|
||||
}
|
||||
|
||||
#battery {
|
||||
background-color: #ffffff;
|
||||
color: #000000;
|
||||
}
|
||||
|
||||
#battery.charging {
|
||||
color: #ffffff;
|
||||
background-color: #26A65B;
|
||||
}
|
||||
|
||||
@keyframes blink {
|
||||
to {
|
||||
background-color: #ffffff;
|
||||
color: #000000;
|
||||
}
|
||||
}
|
||||
|
||||
#battery.critical:not(.charging) {
|
||||
background-color: #f53c3c;
|
||||
color: #ffffff;
|
||||
animation-name: blink;
|
||||
animation-duration: 0.5s;
|
||||
animation-timing-function: linear;
|
||||
animation-iteration-count: infinite;
|
||||
animation-direction: alternate;
|
||||
}
|
||||
|
||||
label:focus {
|
||||
background-color: #000000;
|
||||
}
|
||||
|
||||
#cpu {
|
||||
background-color: #2ecc71;
|
||||
color: #000000;
|
||||
}
|
||||
|
||||
#memory {
|
||||
background-color: #9b59b6;
|
||||
}
|
||||
|
||||
#backlight {
|
||||
background-color: #90b1b1;
|
||||
}
|
||||
|
||||
#network {
|
||||
color: #328fff;
|
||||
}
|
||||
|
||||
#network.disconnected {
|
||||
color: #f53c3c;
|
||||
}
|
||||
|
||||
#pulseaudio {
|
||||
color: #d8c60d;
|
||||
}
|
||||
|
||||
#pulseaudio.muted {
|
||||
color: #90b1b1;
|
||||
}
|
||||
|
||||
#custom-media {
|
||||
background-color: #66cc99;
|
||||
color: #2a5c45;
|
||||
min-width: 100px;
|
||||
}
|
||||
|
||||
#custom-media.custom-spotify {
|
||||
background-color: #66cc99;
|
||||
}
|
||||
|
||||
#custom-media.custom-vlc {
|
||||
background-color: #ffa000;
|
||||
}
|
||||
|
||||
#temperature {
|
||||
background-color: #f0932b;
|
||||
}
|
||||
|
||||
#temperature.critical {
|
||||
background-color: #eb4d4b;
|
||||
}
|
||||
|
||||
#tray {
|
||||
/*background-color: #2980b9;*/
|
||||
}
|
||||
|
||||
#idle_inhibitor {
|
||||
background-color: #2d3436;
|
||||
}
|
||||
|
||||
#idle_inhibitor.activated {
|
||||
background-color: #ecf0f1;
|
||||
color: #2d3436;
|
||||
}
|
||||
|
||||
#mpd {
|
||||
background-color: #66cc99;
|
||||
color: #2a5c45;
|
||||
}
|
||||
|
||||
#mpd.disconnected {
|
||||
background-color: #f53c3c;
|
||||
}
|
||||
|
||||
#mpd.stopped {
|
||||
background-color: #90b1b1;
|
||||
}
|
||||
|
||||
#mpd.paused {
|
||||
background-color: #51a37a;
|
||||
}
|
||||
|
||||
#language {
|
||||
color: #00b093;
|
||||
padding: 0 2px;
|
||||
margin: 0 2px;
|
||||
min-width: 16px;
|
||||
}
|
|
@ -8,8 +8,9 @@ dotfiles - My tiling i3 + i3blocks configuration (for Devuan/Debian)
|
|||
* [i3 + i3status](README-i3.md)
|
||||
* [i3 + i3blocks](README-i3-i3blocks.md)
|
||||
* [i3 + polybar](README-i3-polybar.md)
|
||||
* [sway](README-sway.md)
|
||||
|
||||
![i3WM](examples/i3wm.png)
|
||||
![i3-i3blocks](examples/i3wm.png)
|
||||
|
||||
### Installation:
|
||||
|
||||
|
|
|
@ -8,8 +8,9 @@ dotfiles - My tiling i3 + polybar configuration (for Devuan/Debian)
|
|||
* [i3 + i3status](README-i3.md)
|
||||
* [i3 + i3blocks](README-i3-i3blocks.md)
|
||||
* [i3 + polybar](README-i3-polybar.md)
|
||||
* [sway](README-sway.md)
|
||||
|
||||
![i3WM](examples/i3wm-polybar.png)
|
||||
![i3-polybar](examples/i3wm-polybar.png)
|
||||
|
||||
### Installation:
|
||||
|
||||
|
@ -101,17 +102,6 @@ dotfiles - My tiling i3 + polybar configuration (for Devuan/Debian)
|
|||
#gaps outer 2
|
||||
````
|
||||
|
||||
* **`Battery Indicator:`**
|
||||
|
||||
* By default, the battery indicator is disabled on i3blocks top bar.
|
||||
* You can enable it editing the lines on `~/.config/i3blocks/config` file:
|
||||
|
||||
```shell
|
||||
#[BATTERY]
|
||||
#command=~/.config/i3blocks/battery/battery_info.sh
|
||||
#interval=3
|
||||
````
|
||||
|
||||
### Keys configuration:
|
||||
|
||||
My list of extra combinations:
|
||||
|
|
16
README-i3.md
16
README-i3.md
|
@ -8,8 +8,9 @@ dotfiles - My tiling i3 + i3status configuration (for Devuan/Debian)
|
|||
* [i3 + i3status](README-i3.md)
|
||||
* [i3 + i3blocks](README-i3-i3blocks.md)
|
||||
* [i3 + polybar](README-i3-polybar.md)
|
||||
* [sway](README-sway.md)
|
||||
|
||||
![i3WM](examples/i3wm-i3status.png)
|
||||
![i3-i3status](examples/i3wm-i3status.png)
|
||||
|
||||
### Installation:
|
||||
|
||||
|
@ -83,7 +84,7 @@ dotfiles - My tiling i3 + i3status configuration (for Devuan/Debian)
|
|||
|
||||
* **`Wallpaper:`**
|
||||
|
||||
* By default, the config load wallpaper on `~/wallpapers/abstract.png`:
|
||||
* By default, the config load wallpaper on `~/wallpapers/dark-city.jpg`:
|
||||
* Edit `~/.config/i3/config` for set your favorite wallpaper:
|
||||
|
||||
```shell
|
||||
|
@ -100,17 +101,6 @@ dotfiles - My tiling i3 + i3status configuration (for Devuan/Debian)
|
|||
#gaps outer 2
|
||||
````
|
||||
|
||||
* **`Battery Indicator:`**
|
||||
|
||||
* By default, the battery indicator is disabled on i3blocks top bar.
|
||||
* You can enable it editing the lines on `~/.config/i3blocks/config` file:
|
||||
|
||||
```shell
|
||||
#[BATTERY]
|
||||
#command=~/.config/i3blocks/battery/battery_info.sh
|
||||
#interval=3
|
||||
````
|
||||
|
||||
### Keys configuration:
|
||||
|
||||
My list of extra combinations:
|
||||
|
|
|
@ -8,8 +8,9 @@ dotfiles - My tiling spectrwm + polybar configuration (for Devuan/Debian)
|
|||
* [i3 + i3status](README-i3.md)
|
||||
* [i3 + i3blocks](README-i3-i3blocks.md)
|
||||
* [i3 + polybar](README-i3-polybar.md)
|
||||
* [sway](README-sway.md)
|
||||
|
||||
![spectrwm](examples/spectrwm-polybar.png)
|
||||
![spectrwm-polybar](examples/spectrwm-polybar.png)
|
||||
|
||||
### Installation:
|
||||
|
||||
|
|
137
README-sway.md
Normal file
137
README-sway.md
Normal file
|
@ -0,0 +1,137 @@
|
|||
dotfiles - My tiling sway configuration (for Devuan/Debian)
|
||||
====================================================================
|
||||
|
||||
### My configurations:
|
||||
|
||||
* [spectrwm](README.md)
|
||||
* [spectrwm + polybar](README-spectrwm-polybar.md)
|
||||
* [i3 + i3status](README-i3.md)
|
||||
* [i3 + i3blocks](README-i3-i3blocks.md)
|
||||
* [i3 + polybar](README-i3-polybar.md)
|
||||
* [sway](README-sway.md)
|
||||
|
||||
![sway](examples/sway.png)
|
||||
|
||||
### Installation:
|
||||
|
||||
* **`Install dependencies:`**
|
||||
|
||||
* Open the terminal and type the following commands:
|
||||
|
||||
```shell
|
||||
$ sudo apt-get install sway swaybg wlr-randr wdisplays wofi meson waybar \
|
||||
wayland-protocols libwlroots6 libcairo2 libpango-1.0-0 libgdk-pixbuf2.0-0 \
|
||||
libpcre++0v5 libjson-c5 xwayland libwayland-egl1-mesa libwayland-bin \
|
||||
xdg-desktop-portal-wlr wf-recorder arc-theme breeze-cursor-theme fonts-noto \
|
||||
papirus-icon-theme lxappearance weston slurp grim jq wl-clipboard pnmixer conky \
|
||||
xterm exa fish bat zsh dmenu fzf apcalc rofi engrampa xarchiver mpv ffmpeg \
|
||||
pcmanfm ranger vlc vim geany git nodejs node-base python3 npm make cmake gcc cargo \
|
||||
neofetch screenfetch lm-sensors pavucontrol xscreensaver alsa-utils ristretto
|
||||
````
|
||||
* I use `Connman` instead of `NetWorkManager` (`don't install if you prefer or use NetWorkManager`):
|
||||
|
||||
```shell
|
||||
$ sudo apt-get install connman connman-gtk connman-ui connman-vpn
|
||||
````
|
||||
|
||||
* **`Install alacritty:`**
|
||||
|
||||
* Clone repository and run the scripts for installation:
|
||||
|
||||
```shell
|
||||
$ git clone https://github.com/q3aql/dotfiles
|
||||
$ cd dotfiles
|
||||
$ chmod +x alacritty-install.sh
|
||||
$ sudo ./alacritty-install.sh
|
||||
````
|
||||
|
||||
* **`Install configuration (dotfiles):`**
|
||||
|
||||
* Clone repository and copy files to your home:
|
||||
|
||||
```shell
|
||||
$ git clone https://github.com/q3aql/dotfiles
|
||||
$ cd dotfiles
|
||||
$ cp -rfv .* ~/
|
||||
$ cp -rfv * ~/
|
||||
````
|
||||
|
||||
### Configuration:
|
||||
|
||||
* **`Network Manager (Connman or NetWorkManager):`**
|
||||
|
||||
* By default is enabled `NetWorkManager` as network manager:
|
||||
* If you prefer NetWorkManager, edit the file `~/.config/i3/config`:
|
||||
|
||||
```shell
|
||||
#exec --no-startup-id connman-gtk --tray &
|
||||
exec --no-startup-id nm-applet &
|
||||
````
|
||||
|
||||
* **`Monitor & resolution:`**
|
||||
|
||||
* The configuration load my monitor configuration:
|
||||
* Use the command `wlr-randr` for show your config & edit the file `~/.config/sway/startwlrrandr.sh`:
|
||||
|
||||
```shell
|
||||
sleep 2
|
||||
wlr-randr --output DP-1 --custom-mode 1280x1024@75Hz --pos 288,0
|
||||
wlr-randr --output DP-2 --custom-mode 1280x1024@75Hz --transform 90 --pos 1568,0
|
||||
````
|
||||
|
||||
* **`Wallpaper:`**
|
||||
|
||||
* By default, the config load wallpaper on `~/wallpapers/dark-city.jpg`:
|
||||
* Edit `~/.config/sway/config` for set your favorite wallpaper:
|
||||
|
||||
```shell
|
||||
exec --no-startup-id "swaybg -i ~/wallpapers/dark-city.jpg -m fill"
|
||||
````
|
||||
|
||||
* **`Layout:`**
|
||||
|
||||
* By default, the config load my spanish layout.:
|
||||
* Edit `~/.config/sway/config` for set your configuration:
|
||||
|
||||
```shell
|
||||
# Input layout
|
||||
input * {
|
||||
#xkb_layout "us"
|
||||
xkb_layout "es"
|
||||
#xkb_variant "colemak"
|
||||
}
|
||||
````
|
||||
|
||||
### Keys configuration:
|
||||
|
||||
My list of extra combinations:
|
||||
|
||||
- Super + d = Open Dmenu
|
||||
- Super + p = Open Wofi (run mode)
|
||||
- Super + q = Open Rofi (window mode)
|
||||
- Super + o = Open Wofi (drun mode)
|
||||
- Super + b = Open Firefox
|
||||
- Super + n = Open PCManFM
|
||||
- Super + t = Open Wayland-Screenshooter
|
||||
- Super + g = Open Geany
|
||||
- Super + m = Open Telegram
|
||||
- Super + z = Open Wf-Recorder (Screen video recorder)
|
||||
- Super + x = Open Wdisplays
|
||||
- Super + u = Open Xterm
|
||||
- Super + i = Open LXAppearance
|
||||
- Super + c = Open NetWorkManager
|
||||
- Volume-Up = Volume +5
|
||||
- Volume-Down = Volume -5
|
||||
- VolumeMute = Mute Volume
|
||||
- Super + Ctrl + Shift + e = Poweroff screen
|
||||
- Super + Shit + e = Logout
|
||||
- Super + Backspace = Open menu Logout/Reboot/Shutdown
|
||||
|
||||
### External links:
|
||||
|
||||
* [Antonio Sarosi](https://github.com/antoniosarosi/dotfiles/)
|
||||
* [Derek Taylor](https://gitlab.com/dwt1/dotfiles/)
|
||||
* [TWB0109](https://github.com/TWB0109/PDots)
|
||||
* [i3-style](https://github.com/altdesktop/i3-style)
|
||||
* [addy-dclxvi](https://github.com/addy-dclxvi/i3-starterpack)
|
||||
* [i3-gaps](https://github.com/Airblader/i3)
|
|
@ -1,5 +1,5 @@
|
|||
dotfiles - My tiling spectrwm & i3 configurations (for Devuan/Debian)
|
||||
=====================================================================
|
||||
dotfiles - My tiling spectrwm, i3 & sway configurations (for Devuan/Debian)
|
||||
===========================================================================
|
||||
|
||||
### My configurations:
|
||||
|
||||
|
@ -8,6 +8,7 @@ dotfiles - My tiling spectrwm & i3 configurations (for Devuan/Debian)
|
|||
* [i3 + i3status](README-i3.md)
|
||||
* [i3 + i3blocks](README-i3-i3blocks.md)
|
||||
* [i3 + polybar](README-i3-polybar.md)
|
||||
* [sway](README-sway.md)
|
||||
|
||||
![spectrwm](examples/spectrwm.png)
|
||||
|
||||
|
|
BIN
examples/sway.png
Normal file
BIN
examples/sway.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 880 KiB |
Loading…
Reference in New Issue
Block a user