ReDoin it all

This commit is contained in:
pancakes 2024-03-13 20:40:51 +10:00
parent 21c386d145
commit bb2598d895
28 changed files with 885 additions and 1581 deletions

7
.gitignore vendored
View file

@ -1,8 +1 @@
*.bak
# Fish
fish/.config/fish/completions/
fish/.config/fish/conf.d/
fish/.config/fish/functions/
fish/.config/fish/themes/
fish/.config/fish/fish_variables

116
README.md Normal file
View file

@ -0,0 +1,116 @@
# pancakes' setup
![Screenshot of my setup running on my PC](screenshot.png)
This is the setup that I use for my personal Arch Linux setup. This includes my window manager and frequently used software.
General install steps:
```sh
git clone https://codeberg.org/pancakes/config.git
cd config
just
```
This config expects to be in ~/config and may break if it is not. For a list of packages that I use see my archinstall configs: [amida](https://trypancakes.com/arch/amida.json), [vlam](https://trypancakes.com/arch/vlam.json). On top of this I use the AUR packages: swww.
## General Info
Window Manager: [river](https://github.com/riverwm/river) (Wayland/wlroots) - [config](river/.config/river/init)
Cursor/Icons: Adwaita
GTK 2/3 Theme: Adwaita (Dark)
Colors: [Tokyo Night (Night)](https://github.com/folke/tokyonight.nvim)
Wallpapers: "OneShot: World Machine Edition" wallpapers
Application Font: Noto Sans
Editor/Terminal Font: [FiraCode Nerd Font](https://github.com/ryanoasis/nerd-fonts/tree/master/patched-fonts/FiraCode)
Bar: [Waybar](https://github.com/Alexays/Waybar) - [config](waybar/.config/waybar/)
Menu: [Fuzzel](https://codeberg.org/dnkl/fuzzel) - [config](fuzzel/.config/fuzzel/fuzzel.ini)
Wallpaper Daemon: [swww](https://github.com/Horus645/swww)
File Manager: [ranger](https://github.com/ranger/ranger) - [config](ranger/.config/ranger/rc.conf) / Thunar
Image/Video Player: [imv](https://sr.ht/~exec64/imv/) / [mpv](https://mpv.io/) - [config]
Editor: [Code - OSS](https://github.com/code-oss-dev/code) - [config](code/.config/Code%20-%20OSS/User/settings.json)
Terminal Emulator: [kitty](https://sw.kovidgoyal.net/kitty/) - [config](kitty/.config/kitty/kitty.conf)
Screenshot tool: [screenshot.sh](screenshot.sh)
Other:
- [GameMode](https://github.com/FeralInteractive/gamemode)
- [gamescope](https://github.com/ValveSoftware/gamescope)
- [GOverlay](https://github.com/benjamimgois/goverlay)
- [Heroic Games Launcher](https://heroicgameslauncher.com/)
- [MangoHud](https://github.com/flightlessmango/MangoHud)
- [Prism Launcher](https://prismlauncher.org/)
- Steam
- [Syncthing](https://syncthing.net/)
## river
### Key binds
#### Applications
kitty (terminal) - Super+Enter
Fuzzel (menu) - Super+D
ranger (files) - Super+E
Thunar (files) - Super+Shift+E
BTOP++ (monitor) - Ctrl+Shift+Escape
#### System
Clipboard history - Super+V
Lock screen - Super+Shift+Escape
Exit session - Super+Alt+Shift+Escape
Screenshot (full) - Print
Screenshot (region) - Alt+Print
Toggle microphone mute - Super+M
#### Window
Close focused - Super+Shift+Q
Focus next/previous - Super+J / Super+K
Swap next/previous - Super+Shift+J / Super+Shift+K
Move focused to main - Super+I
Decrease/increase main size - Super+H / Super+L
Decrement/increment main count - Super+Shift+H / Super+Shift+L
Switch to tag {1,9} - Super+{1,9}
Move focused to tag {1,9} - Super+Shift+{1,9}
Show all tags - Super+0
Move focused to all tags - Super+Shift+0
Set main position (left by default) - Super+Left / Super+Right / Super+Up / Super+Down
Toggle focused floating - Super+Space
Toggle focused fullscreen - Super+Shift+Space

View file

@ -1,4 +1,4 @@
#? Config file for btop v. 1.2.13
#? Config file for btop v. 1.3.2
#* Name of a btop++/bpytop/bashtop formatted ".theme" file, "Default" and "TTY" for builtin themes.
#* Themes should be placed in "../share/btop/themes" relative to binary or "$HOME/.config/btop/themes"
@ -37,6 +37,9 @@ graph_symbol = "braille"
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
graph_symbol_cpu = "default"
# Graph symbol to use for graphs in gpu box, "default", "braille", "block" or "tty".
graph_symbol_gpu = "default"
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
graph_symbol_mem = "default"
@ -46,8 +49,8 @@ graph_symbol_net = "default"
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
graph_symbol_proc = "default"
#* Manually set which boxes to show. Available values are "cpu mem net proc", separate values with whitespace.
shown_boxes = "cpu mem net proc"
#* Manually set which boxes to show. Available values are "cpu mem net proc" and "gpu0" through "gpu5", separate values with whitespace.
shown_boxes = "cpu mem proc"
#* Update time in milliseconds, recommended 2000 ms or above for better sample times for graphs.
update_ms = 2000
@ -86,13 +89,19 @@ proc_left = False
#* (Linux) Filter processes tied to the Linux kernel(similar behavior to htop).
proc_filter_kernel = False
#* In tree-view, always accumulate child process resources in the parent process.
proc_aggregate = False
#* Sets the CPU stat shown in upper half of the CPU graph, "total" is always available.
#* Select from a list of detected attributes from the options menu.
cpu_graph_upper = "total"
cpu_graph_upper = "Auto"
#* Sets the CPU stat shown in lower half of the CPU graph, "total" is always available.
#* Select from a list of detected attributes from the options menu.
cpu_graph_lower = "total"
cpu_graph_lower = "Auto"
#* If gpu info should be shown in the cpu box. Available values = "Auto", "On" and "Off".
show_gpu_info = "Auto"
#* Toggles if the lower CPU graph should be inverted.
cpu_invert_lower = True
@ -207,6 +216,33 @@ show_battery = True
#* Which battery to use if multiple are present. "Auto" for auto detection.
selected_battery = "Auto"
#* Show power stats of battery next to charge indicator.
show_battery_watts = True
#* Set loglevel for "~/.config/btop/btop.log" levels are: "ERROR" "WARNING" "INFO" "DEBUG".
#* The level set includes all lower levels, i.e. "DEBUG" will show all logging info.
log_level = "WARNING"
log_level = "WARNING"
#* Measure PCIe throughput on NVIDIA cards, may impact performance on certain cards.
nvml_measure_pcie_speeds = True
#* Horizontally mirror the GPU graph.
gpu_mirror_graph = True
#* Custom gpu0 model name, empty string to disable.
custom_gpu_name0 = ""
#* Custom gpu1 model name, empty string to disable.
custom_gpu_name1 = ""
#* Custom gpu2 model name, empty string to disable.
custom_gpu_name2 = ""
#* Custom gpu3 model name, empty string to disable.
custom_gpu_name3 = ""
#* Custom gpu4 model name, empty string to disable.
custom_gpu_name4 = ""
#* Custom gpu5 model name, empty string to disable.
custom_gpu_name5 = ""

View file

@ -0,0 +1,32 @@
{
"[just]": {
"editor.tabSize": 2
},
"[yaml]": {
"editor.tabSize": 2
},
"accessibility.dimUnfocused.enabled": true,
"breadcrumbs.enabled": false,
"editor.fontFamily": "'FiraCode Nerd Font', monospace",
"editor.fontLigatures": true,
"editor.fontSize": 16,
"editor.formatOnSave": true,
"editor.insertSpaces": true,
"editor.minimap.enabled": false,
"editor.tabSize": 4,
"redhat.telemetry.enabled": false,
"terminal.integrated.cursorBlinking": true,
"terminal.integrated.cursorStyle": "line",
"terminal.integrated.enablePersistentSessions": false,
"terminal.integrated.hideOnStartup": "always",
"update.showReleaseNotes": false,
"vscode-pets.petSize": "medium",
"vscode-pets.throwBallWithMouse": true,
"window.menuBarVisibility": "toggle",
"window.restoreWindows": "one",
"window.zoomLevel": 2,
"workbench.activityBar.location": "hidden",
"workbench.colorTheme": "Tokyo Night",
"workbench.iconTheme": "material-icon-theme",
"workbench.startupEditor": "none"
}

View file

@ -1,6 +0,0 @@
if status is-interactive
# Commands to run in interactive sessions can go here
end
set -Ux RANGER_LOAD_DEFAULT_RC FALSE
set -U fish_greeting

View file

@ -1,6 +0,0 @@
patrickf1/colored_man_pages.fish
gazorby/fish-abbreviation-tips
meaningful-ooo/sponge
jorgebucaran/autopair.fish
nickeb96/puffer-fish
jorgebucaran/fisher

View file

@ -1,91 +1,21 @@
# output=<not set>
font=FiraCode Nerd Font
# dpi-aware=auto
prompt=>
# icon-theme=hicolor
# icons-enabled=yes
# fields=filename,name,generic
# password-character=*
# filter-desktop=no
# fuzzy=yes
# show-actions=no
# terminal=$TERMINAL -e # Note: you cannot actually use environment variables here
# launch-prefix=<not set>
lines=10
width=50
# tabs=8
# horizontal-pad=40
# vertical-pad=8
# inner-pad=0
# image-size-ratio=0.5
# line-height=<use font metrics>
# letter-spacing=0
# layer = top
# exit-on-keyboard-focus-loss = yes
font=Noto Sans:size=14
prompt=":3 "
icon-theme=Adwaita
show-actions=yes
terminal=alacritty -e
horizontal-pad=8
vertical-pad=8
inner-pad=8
[colors]
background=1a1b26cc
background=1a1b26e6
text=c0caf5ff
match=bb9af7ff
selection=bb9af7ff
selection-text=1a1b26ff
border=c0caf5ff
selection-text=1a1b26e6
selection-match=c0caf5ff
border=414868ff
[border]
width=2
radius=5
[dmenu]
# mode=text # text|index
# exit-immediately-if-empty=no
[key-bindings]
# cancel=Escape Control+g
# execute=Return KP_Enter Control+y
# execute-or-next=Tab
# 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 KP_Delete Control+d
# delete-next-word=Mod1+d Control+Delete Control+KP_Delete
# delete-line=Control+k
# prev=Up Control+p
# prev-with-wrap=ISO_Left_Tab
# prev-page=Page_Up KP_Page_Up
# next=Down Control+n
# next-with-wrap=none
# next-page=Page_Down KP_Page_Down
# custom-N: *dmenu mode only*. Like execute, but with a non-zero
# exit-code; custom-1 exits with code 10, custom-2 with 11, custom-3
# with 12, and so on.
# custom-1=Mod1+1
# custom-2=Mod1+2
# custom-3=Mod1+3
# custom-4=Mod1+4
# custom-5=Mod1+5
# custom-6=Mod1+6
# custom-7=Mod1+7
# custom-8=Mod1+8
# custom-9=Mod1+9
# custom-10=Mod1+0
# custom-11=Mod1+exclam
# custom-12=Mod1+at
# custom-13=Mod1+numbersign
# custom-14=Mod1+dollar
# custom-15=Mod1+percent
# custom-16=Mod1+dead_circumflex
# custom-17=Mod1+ampersand
# custom-18=Mod1+asterix
# custom-19=Mod1+parentleft
radius=0

View file

@ -0,0 +1,2 @@
[Settings]
gtk-application-prefer-dark-theme = true

View file

@ -1,173 +0,0 @@
# Environment variables
env = GDK_BACKEND, wayland,x11
env = MOZ_ENABLE_WAYLAND, 1
env = MOZ_USE_XINPUT2, 1
env = QT_QPA_PLATFORM, wayland;xcb
env = SDL_VIDEODRIVER, wayland
env = XDG_CURRENT_DESKTOP, Hyprland
env = XDG_SESSION_DESKTOP, Hyprland
env = XDG_SESSION_TYPE, wayland
# Enable prefer-dark color-scheme setting
exec-once = gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark'
# Autostart
## Apps
exec-once = discord
exec-once = flatpak run im.fluffychat.Fluffychat
exec-once = steam
exec-once = nm-applet
## Services
exec-once = /usr/lib/polkit-kde-authentication-agent-1 # Authentication
exec-once = gammastep -l $(cat ~/.latlon) -t 6500K:3500K # Night light
exec-once = mako # Notifications
exec-once = udiskie & # Drive mounting
exec-once = waybar # Bar
# Wallpaper
exec-once = cp -f ~/Pictures/Wallpapers/$(ls ~/Pictures/Wallpapers -b | shuf -n 1) ~/.wallpaper
exec-once = swww init && swww img ~/.wallpaper
# Idle and locking
$LOCK_CMD = swaylock -fF -i ~/.wallpaper -s fill --clock --effect-blur 5x1 --indicator
exec-once = swayidle -w timeout 300 "$LOCK_CMD --grace 300 --fade-in 0.5" timeout 600 "hyprctl dispatch dpms off" resume "hyprctl dispatch dpms on" before-sleep "$LOCK_CMD"
# Window rules
windowrulev2 = idleinhibit fullscreen, class:(discord) # Discord fullscreen idle inhibit
windowrulev2 = idleinhibit fullscreen, class:(firefox) # Firefox fullscreen idle inhibit
windowrulev2 = workspace 2, class:(discord) # Move Discord to workspace 2
windowrulev2 = workspace 3, class:(fluffychat) # Move FluffyChat to workspace 3
windowrulev2 = workspace 4, class:(steam) # Move Steam to workspace 4
## XWaylandVideoBridge
windowrulev2 = noanim, class:^(xwaylandvideobridge)$
windowrulev2 = nofocus, class:^(xwaylandvideobridge)$
windowrulev2 = noinitialfocus, class:^(xwaylandvideobridge)$
windowrulev2 = opacity 0.0 override 0.0 override, class:^(xwaylandvideobridge)$
# Output configuration
monitor = , preferred, auto, 1 # Wildcard
monitor = desc:AOC 27G2G4 GYGL9HA232568, highrr, auto, 1, vrr,1
monitor = eDP-1, preferred, auto, 1.25 # Laptop
# Input configuration
input {
kb_layout = us
follow_mouse = 0
touchpad {
clickfinger_behavior = true
disable_while_typing = false
drag_lock = true
natural_scroll = true
tap-and-drag = true
}
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
}
gestures {
workspace_swipe = true
}
device:logitech-g703-ls-1 {
accel_profile = flat
}
# Window configuration
general {
gaps_in = 4
gaps_out = 8
border_size = 2
col.active_border = rgba(c0caf5ff)
col.inactive_border = rgba(1a1b26ff)
layout = master
}
decoration {
blur {
enabled = true
size = 5
passes = 1
}
drop_shadow = no
inactive_opacity = 0.95
rounding = 5
}
master {
mfact = 0.6
new_is_master = true
new_on_top = true
}
misc {
disable_hyprland_logo = true
}
# Bindings
## Exit Hyprland
bind = SUPER SHIFT, E, exit,
## Close focused window
bind = SUPER SHIFT, Q, killactive,
## Lock screen
bind = SUPER SHIFT, ESCAPE, exec, $LOCK_CMD --fade-in 0.5
## Launch applications
bind = SUPER, Return, exec, kitty # Terminal
bind = SUPER, D, exec, fuzzel # Menu
bind = SUPER, F, exec, kitty ranger # File browser
bind = CONTROL SHIFT, Escape, exec, kitty btop # Task monitor
## Screenshotting
$GRIM_DIR = ~/Pictures/Screenshots
bind = , Print, exec, GRIM_DEFAULT_DIR=$GRIM_DIR grim && notify-send "Captured screenshot" "Saved in $GRIM_DIR"
bind = ALT, Print, exec, GRIM_DEFAULT_DIR=$GRIM_DIR grim -g "$(slurp)" && notify-send "Captured screenshot" "Saved in $GRIM_DIR"
## Window movements
bind = SUPER, H, layoutmsg, swapprev
bind = SUPER, J, layoutmsg, cyclenext
bind = SUPER, K, layoutmsg, cycleprev
bind = SUPER, L, layoutmsg, swapnext
bind = SUPER SHIFT, Space, togglefloating,
bind = SUPER, I, layoutmsg, focusmaster master
bind = SUPER SHIFT, I, layoutmsg, swapwithmaster
## Window layout
bind = SUPER, left, layoutmsg, orientationleft
bind = SUPER, down, layoutmsg, orientationbottom
bind = SUPER, up, layoutmsg, orientationtop
bind = SUPER, right, layoutmsg, orientationright
## Switch workspaces with SUPER + [0-9]
bind = SUPER, 1, workspace, 1
bind = SUPER, 2, workspace, 2
bind = SUPER, 3, workspace, 3
bind = SUPER, 4, workspace, 4
bind = SUPER, 5, workspace, 5
bind = SUPER, 6, workspace, 6
bind = SUPER, 7, workspace, 7
bind = SUPER, 8, workspace, 8
bind = SUPER, 9, workspace, 9
## Move active window to a workspace with SUPER + SHIFT + [0-9]
bind = SUPER SHIFT, 1, movetoworkspace, 1
bind = SUPER SHIFT, 2, movetoworkspace, 2
bind = SUPER SHIFT, 3, movetoworkspace, 3
bind = SUPER SHIFT, 4, movetoworkspace, 4
bind = SUPER SHIFT, 5, movetoworkspace, 5
bind = SUPER SHIFT, 6, movetoworkspace, 6
bind = SUPER SHIFT, 7, movetoworkspace, 7
bind = SUPER SHIFT, 8, movetoworkspace, 8
bind = SUPER SHIFT, 9, movetoworkspace, 9
## Move/resize windows with SUPER + LMB/RMB and dragging
bindm = SUPER, mouse:272, movewindow
bindm = SUPER, mouse:273, resizewindow

View file

@ -1,49 +0,0 @@
#!/bin/sh
set -ex
sudo pacman -Syu --noconfirm
# Install dev packages
sudo pacman -S --needed --noconfirm base-devel btop curl fish flatpak git hyfetch imagemagick less python-pygments rustup stow xdg-user-dirs
xdg-user-dirs-update
rustup install stable
# Install paru
git clone https://aur.archlinux.org/paru.git /tmp/paru
(cd /tmp/paru; makepkg -si --needed --noconfirm)
# Stow dotfiles
mkdir -p ~/.config/fish
stow */
# Setup fish shell
fish -c "curl -sL https://raw.githubusercontent.com/jorgebucaran/fisher/main/functions/fisher.fish | source && fisher install jorgebucaran/fisher && fisher update"
sudo chsh $USER -s /usr/bin/fish
# Audio
sudo pacman -S --needed --noconfirm easyeffects helvum pamixer pipewire pipewire-alsa pipewire-audio pipewire-jack pipewire-pulse playerctl wireplumber
# Codecs
sudo pacman -S --needed --noconfirm gst-libav gst-plugin-pipewire gst-plugins-base gst-plugins-good gstreamer gstreamer-vaapi libde265
# Greeter
sudo pacman -S --needed --noconfirm sddm
sudo systemctl enable sddm
# Window Manager
paru -S --needed --noconfirm brightnessctl fuzzel gammastep grim hyprland mako network-manager-applet polkit-kde-agent slurp swayidle swaylock-effects-git swww waybar xdg-desktop-portal-gtk xdg-desktop-portal-hyprland xdg-desktop-portal-wlr
mkdir -p ~/Pictures/Screenshots
# Fonts
sudo pacman -S --needed --noconfirm noto-fonts noto-fonts-cjk noto-fonts-emoji noto-fonts-extra ttf-firacode-nerd ttf-liberation wqy-zenhei
# Bluetooth
sudo pacman -S --needed --noconfirm blueberry bluez bluez-utils
sudo systemctl enable bluetooth
# File management
sudo pacman -S --needed --noconfirm atool ffmpegthumbnailer highlight mediainfo python-pillow ranger transmission-cli
# GUI Applications
sudo pacman -S --needed --noconfirm discord firefox imv kitty mpv

61
justfile Normal file
View file

@ -0,0 +1,61 @@
# Displays this message
default:
@just --list --justfile {{justfile()}}
# Installs the paru AUR helper
setup-aur:
rustup install stable
rm -rf /tmp/paru
git clone https://aur.archlinux.org/paru.git /tmp/paru
cd /tmp/paru; makepkg -si
rm -rf /tmp/paru
# Installs Code - OSS extensions
setup-code:
code-oss --install-extension davidanson.vscode-markdownlint
code-oss --install-extension enkia.tokyo-night
code-oss --install-extension irongeek.vscode-env
code-oss --install-extension kokakiwi.vscode-just
code-oss --install-extension ms-python.python
code-oss --install-extension ms-vscode.live-server
code-oss --install-extension naumovs.color-highlight
code-oss --install-extension pkief.material-icon-theme
code-oss --install-extension redhat.vscode-yaml
code-oss --install-extension rust-lang.rust-analyzer
code-oss --install-extension serayuzgur.crates
code-oss --install-extension spgoding.datapack-language-server
code-oss --install-extension tamasfe.even-better-toml
code-oss --install-extension tonybaloney.vscode-pets
code-oss --install-extension usernamehw.errorlens
code-oss --install-extension vscodevim.vim
# Enable the MPD socket
setup-mpd:
mkdir -p ~/.local/share/mpd
systemctl enable --now --user mpd.socket
# Set ZSH as default shell and install plugins
setup-shell:
chsh -s /usr/bin/zsh
sheldon lock
# Installs Waydroid with GAPPS
setup-waydroid:
paru -S binder_linux-dkms waydroid
sudo waydroid init -s GAPPS
sudo systemctl enable --now waydroid-container
waydroid session start &
# Stows all dotfiles into the correct locations
stow:
stow btop
stow code
stow gtk
stow fuzzel
stow kanshi
stow kitty
stow mako
stow ranger
stow river
stow waybar
stow zsh

View file

@ -0,0 +1,7 @@
profile amida {
output "AOC 27G2G4 GYGL9HA232568" mode 1920x1080@144Hz adaptive_sync on
}
profile vlam {
output eDP-1 scale 1.5
}

View file

@ -6,10 +6,10 @@
#: individual font faces and even specify special fonts for particular
#: characters.
font_family Fira Code Nerd Font
# bold_font auto
# italic_font auto
# bold_italic_font auto
font_family FiraCode Nerd Font
bold_font auto
italic_font auto
bold_italic_font auto
#: You can specify different fonts for the bold/italic/bold-italic
#: variants. To get a full list of supported fonts use the `kitty
@ -24,7 +24,7 @@ font_family Fira Code Nerd Font
#: italic_font Operator Mono Book Italic
#: bold_italic_font Operator Mono Medium Italic
font_size 16.0
font_size 14.0
#: Font size (in pts)
@ -35,17 +35,16 @@ font_size 16.0
#: in an RTL script, the words "HELLO WORLD" display in kitty as
#: "WORLD HELLO", and if you try to select a substring of an RTL-
#: shaped string, you will get the character that would be there had
#: the the string been LTR. For example, assuming the Hebrew word
#: ירושלים, selecting the character that on the screen appears to be ם
#: actually writes into the selection buffer the character י. kitty's
#: default behavior is useful in conjunction with a filter to reverse
#: the word order, however, if you wish to manipulate RTL glyphs, it
#: can be very challenging to work with, so this option is provided to
#: turn it off. Furthermore, this option can be used with the command
#: line program GNU FriBidi
#: <https://github.com/fribidi/fribidi#executable> to get BIDI
#: support, because it will force kitty to always treat the text as
#: LTR, which FriBidi expects for terminals.
#: the string been LTR. For example, assuming the Hebrew word ירושלים,
#: selecting the character that on the screen appears to be ם actually
#: writes into the selection buffer the character י. kitty's default
#: behavior is useful in conjunction with a filter to reverse the word
#: order, however, if you wish to manipulate RTL glyphs, it can be
#: very challenging to work with, so this option is provided to turn
#: it off. Furthermore, this option can be used with the command line
#: program GNU FriBidi <https://github.com/fribidi/fribidi#executable>
#: to get BIDI support, because it will force kitty to always treat
#: the text as LTR, which FriBidi expects for terminals.
# symbol_map
@ -239,6 +238,14 @@ font_size 16.0
#: working with applications that use colors that do not contrast well
#: with your preferred color scheme.
#: WARNING: Some programs use characters (such as block characters)
#: for graphics display and may expect to be able to set the
#: foreground and background to the same color (or similar colors).
#: If you see unexpected stripes, dots, lines, incorrect color, no
#: color where you expect color, or any kind of graphic display
#: problem try setting text_fg_override_threshold to 0 to see if this
#: is the cause of the problem.
#: }}}
#: Cursor customization {{{
@ -395,7 +402,9 @@ font_size 16.0
#: Detect URLs under the mouse. Detected URLs are highlighted with an
#: underline and the mouse cursor becomes a hand over them. Even if
#: this option is disabled, URLs are still clickable.
#: this option is disabled, URLs are still clickable. See also the
#: underline_hyperlinks option to control how hyperlinks (as opposed
#: to plain text URLs) are displayed.
# url_excluded_characters
@ -413,6 +422,16 @@ font_size 16.0
#: When the mouse hovers over a terminal hyperlink, show the actual
#: URL that will be activated when the hyperlink is clicked.
# underline_hyperlinks hover
#: Control how hyperlinks are underlined. They can either be
#: underlined on mouse hover, always (i.e. permanently underlined) or
#: never which means that kitty will not apply any underline styling
#: to hyperlinks. Uses the url_style and url_color settings for the
#: underline style. Note that reloading the config and changing this
#: value to/from always will only affect text subsequently received by
#: kitty.
# copy_on_select no
#: Copy to clipboard or a private buffer on select. With this set to
@ -430,7 +449,7 @@ font_size 16.0
#: programs, including websites open in your browser can read the
#: contents of the system clipboard.
# paste_actions quote-urls-at-prompt
# paste_actions quote-urls-at-prompt,confirm
#: A comma separated list of actions to take when pasting text into
#: the terminal. The supported paste actions are:
@ -438,9 +457,17 @@ font_size 16.0
#: quote-urls-at-prompt:
#: If the text being pasted is a URL and the cursor is at a shell prompt,
#: automatically quote the URL (needs shell_integration).
#: replace-dangerous-control-codes
#: Replace dangerous control codes from pasted text, without confirmation.
#: replace-newline
#: Replace the newline character from pasted text, without confirmation.
#: confirm:
#: Confirm the paste if bracketed paste mode is not active or there is
#: a large amount of text being pasted.
#: Confirm the paste if the text to be pasted contains any terminal control codes
#: as this can be dangerous, leading to code execution if the shell/program running
#: in the terminal does not properly handle these.
#: confirm-if-large
#: Confirm the paste if it is very large (larger than 16KB) as pasting
#: large amounts of text into shells can be very slow.
#: filter:
#: Run the filter_paste() function from the file paste-actions.py in
#: the kitty config directory on the pasted text. The text returned by the
@ -477,22 +504,21 @@ font_size 16.0
# focus_follows_mouse no
#: Set the active window to the window under the mouse when moving the
#: mouse around.
#: mouse around. On macOS, this will also cause the OS Window under
#: the mouse to be focused automatically when the mouse enters it.
# pointer_shape_when_grabbed arrow
#: The shape of the mouse pointer when the program running in the
#: terminal grabs the mouse. Valid values are: arrow, beam and hand.
#: terminal grabs the mouse.
# default_pointer_shape beam
#: The default shape of the mouse pointer. Valid values are: arrow,
#: beam and hand.
#: The default shape of the mouse pointer.
# pointer_shape_when_dragging beam
#: The default shape of the mouse pointer when dragging across text.
#: Valid values are: arrow, beam and hand.
#: Mouse actions {{{
@ -597,7 +623,10 @@ font_size 16.0
# mouse_map ctrl+alt+left triplepress ungrabbed mouse_selection line_from_point
#:: Select from the clicked point to the end of the line.
#:: Select from the clicked point to the end of the line. If you
#:: would like to select the word at the point and then extend to the
#:: rest of the line, change line_from_point to
#:: word_and_line_from_point.
#: Extend the current selection
@ -632,7 +661,9 @@ font_size 16.0
# mouse_map ctrl+shift+alt+left triplepress ungrabbed,grabbed mouse_selection line_from_point
#:: Select from the clicked point to the end of the line even when
#:: grabbed.
#:: grabbed. If you would like to select the word at the point and
#:: then extend to the rest of the line, change line_from_point to
#:: word_and_line_from_point.
#: Extend the current selection even when grabbed
@ -682,7 +713,7 @@ font_size 16.0
#: Terminal bell {{{
enable_audio_bell no
# enable_audio_bell yes
#: The audio bell. Useful to disable it in environments that require
#: silence.
@ -698,7 +729,7 @@ enable_audio_bell no
#: selection background color. If you feel that the visual bell is too
#: bright, you can set it to a darker color.
window_alert_on_bell yes
# window_alert_on_bell yes
#: Request window attention on bell. Makes the dock icon bounce on
#: macOS or the taskbar flash on linux.
@ -803,6 +834,14 @@ window_alert_on_bell yes
#: the vertical and horizontal sides. Three values set top, horizontal
#: and bottom. Four values set top, right, bottom and left.
# single_window_padding_width -1
#: The window padding to use when only a single window is visible (in
#: pts). Negative values will cause the value of window_padding_width
#: to be used instead. A single value sets all four sides. Two values
#: set the vertical and horizontal sides. Three values set top,
#: horizontal and bottom. Four values set top, right, bottom and left.
# placement_strategy center
#: When the window size is not an exact multiple of the cell size, the
@ -890,8 +929,8 @@ window_alert_on_bell yes
#: The list of characters for visual window selection. For example,
#: for selecting a window to focus on with focus_visible_window. The
#: value should be a series of unique numbers or alphabets, case
#: insensitive, from the set [0-9A-Z]. Specify your preference as a
#: string of characters.
#: insensitive, from the set 0-9A-Z\-=[];',./\\`. Specify your
#: preference as a string of characters.
# confirm_os_window_close -1
@ -1080,7 +1119,7 @@ window_alert_on_bell yes
#: The foreground and background colors.
background_opacity 0.8
background_opacity 0.9
#: The opacity of the background. A number between zero and one, where
#: one is opaque and zero is fully transparent. This will only work if
@ -1114,7 +1153,7 @@ background_opacity 0.8
#: and/or rendering artifacts. Usually, values up to 64 work well.
#: Note that this might cause performance issues, depending on how the
#: platform implements it, so use with care. Currently supported on
#: macOS and KDE/X11.
#: macOS and KDE under X11.
# background_image none
@ -1252,7 +1291,8 @@ background_opacity 0.8
#: whatever shell is set as the default shell for the current user.
#: Note that on macOS if you change this, you might need to add
#: --login and --interactive to ensure that the shell starts in
#: interactive mode and reads its startup rc files.
#: interactive mode and reads its startup rc files. Environment
#: variables are expanded in this setting.
# editor .
@ -1295,7 +1335,7 @@ background_opacity 0.8
#: To get a list of available actions, run::
#: kitty @ --help
#: kitten @ --help
#: A set of actions to be allowed when no password is sent can be
#: specified by using an empty password. For example::
@ -1343,19 +1383,20 @@ background_opacity 0.8
# listen_on none
#: Listen to the specified UNIX socket for remote control connections.
#: Note that this will apply to all kitty instances. It can be
#: overridden by the kitty --listen-on command line option, which also
#: supports listening on a TCP socket. This option accepts only UNIX
#: sockets, such as unix:${TEMP}/mykitty or unix:@mykitty (on Linux).
#: Listen to the specified socket for remote control connections. Note
#: that this will apply to all kitty instances. It can be overridden
#: by the kitty --listen-on command line option. For UNIX sockets,
#: such as unix:${TEMP}/mykitty or unix:@mykitty (on Linux).
#: Environment variables are expanded and relative paths are resolved
#: with respect to the temporary directory. If {kitty_pid} is present,
#: then it is replaced by the PID of the kitty process, otherwise the
#: PID of the kitty process is appended to the value, with a hyphen.
#: See the help for kitty --listen-on for more details. Note that this
#: will be ignored unless allow_remote_control is set to either: yes,
#: socket or socket-only. Changing this option by reloading the config
#: is not supported.
#: For TCP sockets such as tcp:localhost:0 a random port is always
#: used even if a non-zero port number is specified. See the help for
#: kitty --listen-on for more details. Note that this will be ignored
#: unless allow_remote_control is set to either: yes, socket or
#: socket-only. Changing this option by reloading the config is not
#: supported.
# env
@ -1465,7 +1506,7 @@ background_opacity 0.8
#: disabled to turn off shell integration, completely. It is also
#: possible to disable individual features, set to a space separated
#: list of these values: no-rc, no-cursor, no-title, no-cwd, no-
#: prompt-mark, no-complete. See Shell integration
#: prompt-mark, no-complete, no-sudo. See Shell integration
#: <https://sw.kovidgoyal.net/kitty/shell-integration/> for details.
# allow_cloning ask
@ -1498,7 +1539,7 @@ background_opacity 0.8
#: KITTY_CLONE_SOURCE_PATH.
#: This option must be a comma separated list of the above values.
#: This only source the first valid one in the above order.
#: Only the first valid match, in the order specified, is sourced.
# term xterm-kitty
@ -1513,6 +1554,27 @@ background_opacity 0.8
#: work. Changing this option by reloading the config will only affect
#: newly created windows.
# forward_stdio no
#: Forward STDOUT and STDERR of the kitty process to child processes
#: as file descriptors 3 and 4. This is useful for debugging as it
#: allows child processes to print to kitty's STDOUT directly. For
#: example, echo hello world >&3 in a shell will print to the parent
#: kitty's STDOUT. When enabled, this also sets the
#: KITTY_STDIO_FORWARDED=3 environment variable so child processes
#: know about the forwarding.
# menu_map
#: Specify entries for various menus in kitty. Currently only the
#: global menubar on macOS is supported. For example::
#: menu_map global "Actions::Launch something special" launch --hold --type=os-window sh -c "echo hello world"
#: This will create a menu entry named "Launch something special" in
#: an "Actions" menu in the macOS global menubar. Sub-menus can be
#: created by adding more levels separated by ::.
#: }}}
#: OS specific tweaks {{{
@ -2348,7 +2410,7 @@ background_opacity 0.8
#:: Quoting.html> so you can use escapes like \e to send control
#:: codes or \u21fb to send Unicode characters (or you can just input
#:: the Unicode characters directly as UTF-8 text). You can use
#:: `kitty +kitten show_key` to get the key escape codes you want to
#:: `kitten show_key` to get the key escape codes you want to
#:: emulate.
#:: The first argument to send_text is the keyboard modes in which to
@ -2394,4 +2456,4 @@ background_opacity 0.8
# BEGIN_KITTY_THEME
# Tokyo Night
include current-theme.conf
# END_KITTY_THEME
# END_KITTY_THEME

View file

@ -1,7 +1,7 @@
font=FiraCode Nerd Font 16
background-color=#1a1b26
font=Noto Sans 16
background-color=#1a1b26e6
text-color=#c0caf5
border-color=#c0caf5
border-radius=5
default-timeout=30000
width=500
width=400
padding=8
border-color=#414868
default-timeout=15000

View file

@ -1,945 +0,0 @@
# See this wiki page for more info:
# https://github.com/dylanaraps/neofetch/wiki/Customizing-Info
print_info() {
#info title
#info underline
info "OS" distro
info "Host" model
info "Kernel" kernel
#info "BIOS" bios
info "Uptime" uptime
info "Packages" packages
info "Shell" shell
info "Editor" editor
#info "Resolution" resolution
info "DE" de
info "WM" wm
info "WM Theme" wm_theme
info "Theme" theme
info "Icons" icons
info "Cursor" cursor
info "Terminal" term
info "Terminal Font" term_font
info "CPU" cpu
info "GPU" gpu
info "Memory" memory
#info "Network" network
#info "Bluetooth" bluetooth
# info "GPU Driver" gpu_driver # Linux/macOS only
# info "Disk" disk
# info "Battery" battery
# info "Power Adapter" power_adapter # macOS only
# info "Font" font
# info "Song" song
# [[ "$player" ]] && prin "Music Player" "$player"
# info "Local IP" local_ip
# info "Public IP" public_ip
# info "Users" users
# info "Locale" locale # This only works on glibc systems.
# info "Java" java_ver
# info "Python" python_ver
# info "Node" node_ver
info cols
}
# Title
# Hide/Show Fully qualified domain name.
#
# Default: 'off'
# Values: 'on', 'off'
# Flag: --title_fqdn
title_fqdn="off"
# Kernel
# Shorten the output of the kernel function.
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: --kernel_shorthand
# Supports: Everything except *BSDs (except PacBSD and PC-BSD)
#
# Example:
# on: '4.8.9-1-ARCH'
# off: 'Linux 4.8.9-1-ARCH'
kernel_shorthand="on"
# Distro
# Shorten the output of the distro function
#
# Default: 'off'
# Values: 'on', 'tiny', 'off'
# Flag: --distro_shorthand
# Supports: Everything except Windows and Haiku
distro_shorthand="off"
# Show/Hide OS Architecture.
# Show 'x86_64', 'x86' and etc in 'Distro:' output.
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: --os_arch
#
# Example:
# on: 'Arch Linux x86_64'
# off: 'Arch Linux'
os_arch="on"
# Uptime
# Shorten the output of the uptime function
#
# Default: 'on'
# Values: 'on', 'tiny', 'off'
# Flag: --uptime_shorthand
#
# Example:
# on: '2 days, 10 hours, 3 mins'
# tiny: '2d 10h 3m'
# off: '2 days, 10 hours, 3 minutes'
uptime_shorthand="on"
# Memory
# Show memory percentage in output.
#
# Default: 'off'
# Values: 'on', 'off'
# Flag: --memory_percent
#
# Example:
# on: '1801MiB / 7881MiB (22%)'
# off: '1801MiB / 7881MiB'
memory_percent="on"
# Change memory output unit.
#
# Default: 'mib'
# Values: 'kib', 'mib', 'gib', 'tib'
# Flag: --memory_unit
#
# Example:
# kib '1020928KiB / 7117824KiB'
# mib '1042MiB / 6951MiB'
# gib: ' 0.98GiB / 6.79GiB'
memory_unit="gib"
# Change memory output precision.
#
# Default: '2'
# Values: integer ≥ 0
# Flag: --memory_precision
mem_precision=2
# Packages
# Show/Hide Package Manager names.
#
# Default: 'tiny'
# Values: 'on', 'tiny' 'off'
# Flag: --package_managers
#
# Example:
# on: '998 (pacman), 8 (flatpak), 4 (snap)'
# tiny: '908 (pacman, flatpak, snap)'
# off: '908'
package_managers="on"
# Show separate user and system packages for supported package managers
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: --package_separate
#
# Example:
# on: '8 packages (flatpak-system), 9 packages (flatpak-user)'
# off: '17 packages (flatpak)'
package_separate="on"
# Shell
# Show the path to $SHELL
#
# Default: 'off'
# Values: 'on', 'off'
# Flag: --shell_path
#
# Example:
# on: '/bin/bash'
# off: 'bash'
shell_path="off"
# Show $SHELL version
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: --shell_version
#
# Example:
# on: 'bash 4.4.5'
# off: 'bash'
shell_version="on"
# Editor
# Show path to $EDITOR
#
# Default: 'off'
# Values: 'on', 'off'
# Flag: --editor_path
#
# Example:
# on: '/opt/bin/vim'
# off: 'vim'
editor_path="off"
# Show $EDITOR version
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: '--editor_version'
#
# Example:
# on: 'vim 9.0'
# off: 'vim'
editor_version="on"
# CPU
# CPU speed type
#
# Default: 'bios_limit'
# Values: 'scaling_cur_freq', 'scaling_min_freq', 'scaling_max_freq', 'bios_limit'.
# Flag: --speed_type
# Supports: Linux with 'cpufreq'
# NOTE: Any file in '/sys/devices/system/cpu/cpu0/cpufreq' can be used as a value.
speed_type="bios_limit"
# CPU speed shorthand
#
# Default: 'off'
# Values: 'on', 'off'.
# Flag: --speed_shorthand
# NOTE: This flag is not supported in systems with CPU speed less than 1 GHz
#
# Example:
# on: 'i7-6500U (4) @ 3.1GHz'
# off: 'i7-6500U (4) @ 3.100GHz'
speed_shorthand="on"
# Enable/Disable CPU brand in output.
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: --cpu_brand
#
# Example:
# on: 'Intel i7-6500U'
# off: 'i7-6500U (4)'
cpu_brand="on"
# CPU Speed
# Hide/Show CPU speed.
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: --cpu_speed
#
# Example:
# on: 'Intel i7-6500U (4) @ 3.1GHz'
# off: 'Intel i7-6500U (4)'
cpu_speed="on"
# CPU Cores
# Display CPU cores in output
#
# Default: 'logical'
# Values: 'logical', 'physical', 'off'
# Flag: --cpu_cores
# Support: 'physical' doesn't work on BSD.
#
# Example:
# logical: 'Intel i7-6500U (4) @ 3.1GHz' (All virtual cores)
# physical: 'Intel i7-6500U (2) @ 3.1GHz' (All physical cores)
# off: 'Intel i7-6500U @ 3.1GHz'
cpu_cores="logical"
# CPU Temperature
# Hide/Show CPU temperature.
# Note the temperature is added to the regular CPU function.
#
# Default: 'off'
# Values: 'C', 'F', 'off'
# Flag: --cpu_temp
# Supports: Linux, BSD
# NOTE: For FreeBSD and NetBSD-based systems, you'll need to enable
# coretemp kernel module. This only supports newer Intel processors.
#
# Example:
# C: 'Intel i7-6500U (4) @ 3.1GHz [27.2°C]'
# F: 'Intel i7-6500U (4) @ 3.1GHz [82.0°F]'
# off: 'Intel i7-6500U (4) @ 3.1GHz'
cpu_temp="off"
# GPU
# Enable/Disable GPU Brand
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: --gpu_brand
#
# Example:
# on: 'AMD HD 7950'
# off: 'HD 7950'
gpu_brand="on"
# Which GPU to display
#
# Default: 'all'
# Values: 'all', 'dedicated', 'integrated'
# Flag: --gpu_type
# Supports: Linux
#
# Example:
# all:
# GPU1: AMD HD 7950
# GPU2: Intel Integrated Graphics
#
# dedicated:
# GPU1: AMD HD 7950
#
# integrated:
# GPU1: Intel Integrated Graphics
gpu_type="all"
# Resolution
# Display refresh rate next to each monitor
# Default: 'off'
# Values: 'on', 'off'
# Flag: --refresh_rate
# Supports: Doesn't work on Windows.
#
# Example:
# on: '1920x1080 @ 60Hz'
# off: '1920x1080'
refresh_rate="on"
# Gtk Theme / Icons / Font
# Shorten output of GTK Theme / Icons / Font
#
# Default: 'off'
# Values: 'on', 'off'
# Flag: --gtk_shorthand
#
# Example:
# on: 'Numix, Adwaita'
# off: 'Numix [GTK2], Adwaita [GTK3]'
gtk_shorthand="off"
# Enable/Disable gtk2 Theme / Icons / Font
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: --gtk2
#
# Example:
# on: 'Numix [GTK2], Adwaita [GTK3]'
# off: 'Adwaita [GTK3]'
gtk2="on"
# Enable/Disable gtk3 Theme / Icons / Font
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: --gtk3
#
# Example:
# on: 'Numix [GTK2], Adwaita [GTK3]'
# off: 'Numix [GTK2]'
gtk3="on"
# Enable/Disable Qt Theme / Icons / Font
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: --qt
#
# Example:
# on: 'Breeze [Qt], Arc [GTK3]'
# off: 'Arc [GTK3]'
qt="on"
# IP Address
# Website to ping for the public IP
#
# Default: 'http://ident.me'
# Values: 'url'
# Flag: --ip_host
public_ip_host="http://ident.me"
# Public IP timeout.
#
# Default: '2'
# Values: 'int'
# Flag: --ip_timeout
public_ip_timeout=2
# Local IP interface
#
# Default: 'auto' (interface of default route)
# Values: 'auto', 'en0', 'en1'
# Flag: --ip_interface
local_ip_interface=('auto')
# Desktop Environment
# Show Desktop Environment version
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: --de_version
de_version="on"
# Disk
# Which disks to display.
# The values can be any /dev/sdXX, mount point or directory.
# NOTE: By default we only show the disk info for '/'.
#
# Default: '/'
# Values: '/', '/dev/sdXX', '/path/to/drive'.
# Flag: --disk_show
#
# Example:
# disk_show=('/' '/dev/sdb1'):
# 'Disk (/): 74G / 118G (66%)'
# 'Disk (/mnt/Videos): 823G / 893G (93%)'
#
# disk_show=('/'):
# 'Disk (/): 74G / 118G (66%)'
#
disk_show=('/')
# Disk subtitle.
# What to append to the Disk subtitle.
#
# Default: 'mount'
# Values: 'mount', 'name', 'dir', 'none'
# Flag: --disk_subtitle
#
# Example:
# name: 'Disk (/dev/sda1): 74G / 118G (66%)'
# 'Disk (/dev/sdb2): 74G / 118G (66%)'
#
# mount: 'Disk (/): 74G / 118G (66%)'
# 'Disk (/mnt/Local Disk): 74G / 118G (66%)'
# 'Disk (/mnt/Videos): 74G / 118G (66%)'
#
# dir: 'Disk (/): 74G / 118G (66%)'
# 'Disk (Local Disk): 74G / 118G (66%)'
# 'Disk (Videos): 74G / 118G (66%)'
#
# none: 'Disk: 74G / 118G (66%)'
# 'Disk: 74G / 118G (66%)'
# 'Disk: 74G / 118G (66%)'
disk_subtitle="mount"
# Disk percent.
# Show/Hide disk percent.
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: --disk_percent
#
# Example:
# on: 'Disk (/): 74G / 118G (66%)'
# off: 'Disk (/): 74G / 118G'
disk_percent="on"
# Song
# Manually specify a music player.
#
# Default: 'auto'
# Values: 'auto', 'player-name'
# Flag: --music_player
#
# Available values for 'player-name':
#
# amarok
# audacious
# banshee
# bluemindo
# clementine
# cmus
# deadbeef
# deepin-music
# dragon
# elisa
# exaile
# gnome-music
# gmusicbrowser
# gogglesmm
# guayadeque
# io.elementary.music
# iTunes
# Music
# juk
# lollypop
# MellowPlayer
# mocp
# mopidy
# mpd
# muine
# netease-cloud-music
# olivia
# playerctl
# pogo
# pragha
# qmmp
# quodlibet
# rhythmbox
# sayonara
# smplayer
# spotify
# strawberry
# tauonmb
# tomahawk
# vlc
# xmms2d
# xnoise
# yarock
music_player="auto"
# Format to display song information.
#
# Default: '%artist% - %album% - %title%'
# Values: '%artist%', '%album%', '%title%'
# Flag: --song_format
#
# Example:
# default: 'Song: Jet - Get Born - Sgt Major'
song_format="%artist% - %album% - %title%"
# Print the Artist, Album and Title on separate lines
#
# Default: 'off'
# Values: 'on', 'off'
# Flag: --song_shorthand
#
# Example:
# on: 'Artist: The Fratellis'
# 'Album: Costello Music'
# 'Song: Chelsea Dagger'
#
# off: 'Song: The Fratellis - Costello Music - Chelsea Dagger'
song_shorthand="off"
# 'mpc' arguments (specify a host, password etc).
#
# Default: ''
# Example: mpc_args=(-h HOST -P PASSWORD)
mpc_args=()
# Text Colors
# Text Colors
#
# Default: 'distro'
# Values: 'distro', 'num' 'num' 'num' 'num' 'num' 'num'
# Flag: --colors
#
# Each number represents a different part of the text in
# this order: 'title', '@', 'underline', 'subtitle', 'colon', 'info'
#
# Example:
# colors=(distro) - Text is colored based on Distro colors.
# colors=(4 6 1 8 8 6) - Text is colored in the order above.
colors=(distro)
# Text Options
# Toggle bold text
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: --bold
bold="on"
# Enable/Disable Underline
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: --underline
underline_enabled="on"
# Underline character
#
# Default: '-'
# Values: 'string'
# Flag: --underline_char
underline_char="-"
# Info Separator
# Replace the default separator with the specified string.
#
# Default: ':'
# Flag: --separator
#
# Example:
# separator="->": 'Shell-> bash'
# separator=" =": 'WM = dwm'
separator=":"
# Color Blocks
# Color block range
# The range of colors to print.
#
# Default: '0', '15'
# Values: 'num'
# Flag: --block_range
#
# Example:
#
# Display colors 0-7 in the blocks. (8 colors)
# neofetch --block_range 0 7
#
# Display colors 0-15 in the blocks. (16 colors)
# neofetch --block_range 0 15
block_range=(0 15)
# Toggle color blocks
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: --color_blocks
color_blocks="on"
# Color block width in spaces
#
# Default: '3'
# Values: 'num'
# Flag: --block_width
block_width=3
# Color block height in lines
#
# Default: '1'
# Values: 'num'
# Flag: --block_height
block_height=1
# Color Alignment
#
# Default: 'auto'
# Values: 'auto', 'num'
# Flag: --col_offset
#
# Number specifies how far from the left side of the terminal (in spaces) to
# begin printing the columns, in case you want to e.g. center them under your
# text.
# Example:
# col_offset="auto" - Default behavior of neofetch
# col_offset=7 - Leave 7 spaces then print the colors
col_offset="auto"
# Progress Bars
# Bar characters
#
# Default: '-', '='
# Values: 'string', 'string'
# Flag: --bar_char
#
# Example:
# neofetch --bar_char 'elapsed' 'total'
# neofetch --bar_char '-' '='
bar_char_elapsed="-"
bar_char_total="="
# Toggle Bar border
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: --bar_border
bar_border="on"
# Progress bar length in spaces
# Number of chars long to make the progress bars.
#
# Default: '15'
# Values: 'num'
# Flag: --bar_length
bar_length=15
# Progress bar colors
# When set to distro, uses your distro's logo colors.
#
# Default: 'distro', 'distro'
# Values: 'distro', 'num'
# Flag: --bar_colors
#
# Example:
# neofetch --bar_colors 3 4
# neofetch --bar_colors distro 5
bar_color_elapsed="distro"
bar_color_total="distro"
# Info display
# Display a bar with the info.
#
# Default: 'off'
# Values: 'bar', 'infobar', 'barinfo', 'off'
# Flags: --memory_display
# --battery_display
# --disk_display
#
# Example:
# bar: '[---=======]'
# infobar: 'info [---=======]'
# barinfo: '[---=======] info'
# off: 'info'
memory_display="off"
battery_display="off"
disk_display="off"
# Backend Settings
# Image backend.
#
# Default: 'ascii'
# Values: 'ascii', 'caca', 'catimg', 'chafa', 'jp2a', 'iterm2', 'off',
# 'pot', 'termpix', 'pixterm', 'tycat', 'w3m', 'kitty', 'ueberzug',
# 'viu'
# Flag: --backend
image_backend="ascii"
# Image Source
#
# Which image or ascii file to display.
#
# Default: 'auto'
# Values: 'auto', 'ascii', 'wallpaper', '/path/to/img', '/path/to/ascii', '/path/to/dir/'
# 'command output (neofetch --ascii "$(fortune | cowsay -W 30)")'
# Flag: --source
#
# NOTE: 'auto' will pick the best image source for whatever image backend is used.
# In ascii mode, distro ascii art will be used and in an image mode, your
# wallpaper will be used.
image_source="auto"
# Ascii Options
# Ascii distro
# Which distro's ascii art to display.
#
# Default: 'auto'
# Values: 'auto', 'distro_name'
# Flag: --ascii_distro
#
# NOTE: AIX, AlmaLinux, Alpine, Alter, Amazon, AmogOS, Anarchy, Android, Antergos, antiX, AOSC OS,
# AOSC OS/Retro, Aperio GNU/Linux, Aperture, Apricity, Arch, ArchBox, Archcraft, archcraft_ascii,
# archcraft_minimal, ARCHlabs, ArchMerge, ArchStrike, ArcoLinux, ArseLinux, Artix, Arya, Asahi,
# Aster, AsteroidOS, astOS, Astra Linux, Athena, Bedrock, BigLinux, Bitrig, BlackArch, blackPanther,
# BLAG, BlankOn, BlueLight, Bodhi, bonsai, BSD, BunsenLabs, CachyOS, Calculate, CalinixOS, Carbs,
# CBL-Mariner, CelOS, Center, CentOS, Chakra, ChaletOS, Chapeau, ChonkySealOS, Chrom, Cleanjaro,
# Clear Linux OS, ClearOS, Clover, Cobalt, Condres, Container Linux by CoreOS, CRUX, Crystal Linux,
# Cucumber, CutefishOS, CuteOS, CyberOS, dahlia, DarkOs, Darwin, Debian, Deepin, DesaOS, Devuan,
# DietPi, DracOS, DragonFly, Drauger, Droidian, Elementary, Elive, EncryptOS, EndeavourOS, Endless,
# Enso, EuroLinux, EvolutionOS, Exherbo, Exodia Predator OS, Fedora, FemboyOS, Feren, Finnix,
# Floflis, FreeBSD, FreeMiNT, Frugalware, Funtoo, GalliumOS, Garuda, Gentoo, GhostBSD, glaucus,
# gNewSense, GNOME, GNU, GoboLinux, GrapheneOS, Grombyang, Guix, Haiku, HamoniKR, HarDClanZ, Hash,
# Huayra, Hybrid, HydroOS, Hyperbola, iglunix, instantOS, IRIX, Itc, januslinux, Kaisen, Kali, KaOS,
# KDE, Kibojoe, Kogaion, Korora, KrassOS, KSLinux, Kubuntu, LangitKetujuh, LaxerOS, LEDE, LibreELEC,
# Linspire, Linux, Linux Lite, Linux Mint, Linux Mint Old, Live Raizo, LMDE, Lubuntu, Lunar, mac,
# Mageia, MagpieOS, Mandriva, Manjaro, MassOS, MatuusOS, Maui, Meowix, Mer, Minix, MIRACLE LINUX,
# MX, Namib, NekOS, Neptune, NetBSD, Netrunner, Nitrux, NixOS, Nobara, NomadBSD, Nurunner, NuTyX,
# Obarun, OBRevenge, OmniOS, Open Source Media Center, OpenBSD, openEuler, OpenIndiana, openKylin,
# openmamba, OpenMandriva, OpenStage, openSUSE, openSUSE Leap, openSUSE Tumbleweed, OPNsense,
# Oracle, orchid, OS Elbrus, PacBSD, Panwah, Parabola, parch, Pardus, Parrot, Parsix, PCBSD,
# PCLinuxOS, pearOS, Pengwin, Pentoo, Peppermint, phyOS, PikaOS, Pisi, PNM Linux, Pop!_OS, Porteus,
# PostMarketOS, Profelis SambaBOX, Proxmox, PuffOS, Puppy, PureOS, Q4OS, Qubes, Qubyt, Quibian,
# Radix, Raspbian, ravynOS, Reborn OS, Red Star, Redcore, Redhat, Refracted Devuan, Regata,
# Regolith, RhaymOS, rocky, Rosa, Sabayon, sabotage, Sailfish, SalentOS, Salient OS, Salix,
# Sasanqua, Scientific, semc, Septor, Serene, SharkLinux, ShastraOS, Siduction, SkiffOS, Slackel,
# Slackware, SliTaz, SmartOS, Soda, Solus, Source Mage, Sparky, Star, SteamOS, Stock Linux, Sulin,
# SunOS, SwagArch, t2, Tails, TeArch, TorizonCore, Trisquel, Twister, Ubuntu, Ubuntu Budgie, Ubuntu
# Cinnamon, Ubuntu Kylin, Ubuntu MATE, Ubuntu Studio, Ubuntu Sway, Ubuntu Touch, Ubuntu-GNOME,
# ubuntu_old02, Ultramarine Linux, unicodearch, Univalent, Univention, Uos, UrukOS, uwuntu, Vanilla,
# Venom, VNux, Void, VzLinux, wii-linux-ngx, Windows, Windows 10, Windows 11, Windows95, Wrt,
# XFerience, Xubuntu, yiffOS, Zorin have ascii logos.
# NOTE: arch, dragonfly, Fedora, LangitKetujuh, nixos, redhat, Ubuntu have 'old' logo variants, use
# {distro}_old to use them.
# NOTE: alpine, android, aoscosretro, arch, arcolinux, artix, CalinixOS, centos, cleanjaro, crux,
# debian, dragonfly, elementary, fedora, freebsd, garuda, gentoo, guix, haiku, hyperbola, kali,
# linuxlite, linuxmint, mac, mageia, manjaro, mx, netbsd, nixos, openbsd, opensuse, orchid,
# parabola, popos, postmarketos, pureos, Raspbian, rocky, slackware, sunos, ubuntu, venom, void have
# 'small' logo variants, use {distro}_small to use them.
ascii_distro="auto"
# Ascii Colors
#
# Default: 'distro'
# Values: 'distro', 'num' 'num' 'num' 'num' 'num' 'num'
# Flag: --ascii_colors
#
# Example:
# ascii_colors=(distro) - Ascii is colored based on Distro colors.
# ascii_colors=(4 6 1 8 8 6) - Ascii is colored using these colors.
ascii_colors=(distro)
# Bold ascii logo
# Whether or not to bold the ascii logo.
#
# Default: 'on'
# Values: 'on', 'off'
# Flag: --ascii_bold
ascii_bold="on"
# Image Options
# Image loop
# Setting this to on will make neofetch redraw the image constantly until
# Ctrl+C is pressed. This fixes display issues in some terminal emulators.
#
# Default: 'off'
# Values: 'on', 'off'
# Flag: --loop
image_loop="off"
# Thumbnail directory
#
# Default: '~/.cache/thumbnails/neofetch'
# Values: 'dir'
thumbnail_dir="${XDG_CACHE_HOME:-${HOME}/.cache}/thumbnails/neofetch"
# Crop mode
#
# Default: 'normal'
# Values: 'normal', 'fit', 'fill'
# Flag: --crop_mode
#
# See this wiki page to learn about the fit and fill options.
# https://github.com/dylanaraps/neofetch/wiki/What-is-Waifu-Crop%3F
crop_mode="normal"
# Crop offset
# Note: Only affects 'normal' crop mode.
#
# Default: 'center'
# Values: 'northwest', 'north', 'northeast', 'west', 'center'
# 'east', 'southwest', 'south', 'southeast'
# Flag: --crop_offset
crop_offset="center"
# Image size
# The image is half the terminal width by default.
#
# Default: 'auto'
# Values: 'auto', '00px', '00%', 'none'
# Flags: --image_size
# --size
image_size="auto"
# Catimg block size.
# Control the resolution of catimg.
#
# Default: '2'
# Values: '1', '2'
# Flags: --catimg_size
catimg_size="2"
# Gap between image and text
#
# Default: '3'
# Values: 'num', '-num'
# Flag: --gap
gap=3
# Image offsets
# Only works with the w3m backend.
#
# Default: '0'
# Values: 'px'
# Flags: --xoffset
# --yoffset
yoffset=0
xoffset=0
# Image background color
# Only works with the w3m backend.
#
# Default: ''
# Values: 'color', 'blue'
# Flag: --bg_color
background_color=
# Misc Options
# Stdout mode
# If enabled, turn off all colors and disables image backend (ASCII/Image).
# Useful for piping into another command.
# Default: 'auto'
# Values: 'auto', 'on', 'off'
stdout="auto"

View file

@ -1,4 +0,0 @@
set number
set tabstop=4
set shiftwidth=4 smarttab
set expandtab

View file

@ -470,6 +470,7 @@ map ggh cd ~/Games/Heroic
map ggl cd ~/Games/Lutris
map ggm cd ~/.var/app/org.prismlauncher.PrismLauncher/data/PrismLauncher/instances
map ggs cd ~/.local/share/Steam/steamapps/common
map gr cd /run/media/ollie
# External Programs
map E edit
@ -764,3 +765,4 @@ tmap <delete> eval -q fm.ui.taskview.task_remove()
tmap <C-l> redraw_window
tmap <ESC> taskview_close
copytmap <ESC> q Q w <C-c>

209
river/.config/river/init Executable file
View file

@ -0,0 +1,209 @@
#!/bin/sh
# Make Flatpaks visible in Fuzzel and other places
export XDG_DATA_DIRS=/var/lib/flatpak/exports/share:~/.local/share/flatpak/exports/share:$XDG_DATA_DIRS
riverctl spawn "dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP=river"
TERMINAL=kitty
cp -f ~/Pictures/Wallpapers/$(ls ~/Pictures/Wallpapers -b | shuf -n 1) ~/.wallpaper
## Autostart
riverctl spawn kanshi # Output management
riverctl spawn /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 # Authentication GUI
riverctl spawn mako # Notifications
riverctl spawn nm-applet # NetworkManager tray
riverctl spawn "udiskie -t -f '$TERMINAL -e ranger'" # Removeable storage management
riverctl spawn "wl-paste --type text --watch cliphist store" # Stores only text data
riverctl spawn "wl-paste --type image --watch cliphist store" # Stores only image data
riverctl spawn waybar # Bar
riverctl spawn "sleep 1s && swww init && swww img ~/.wallpaper" # Wallpaper daemon
# Per device apps
while read program; do
riverctl spawn $program
done < ~/.config/autostart
## Appearance
riverctl xcursor-theme Adwaita 24
# Set background and border color
riverctl background-color 0x15161e
riverctl border-color-focused 0xbb9af7
riverctl border-color-unfocused 0x414868
riverctl border-color-urgent 0xe0af68
# Enable prefer-dark
gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark'
## Inputs
riverctl focus-follows-cursor disabled
# Logitech G703
riverctl input pointer-1133-16518-Logitech_G703_LS accel-profile flat
# ThinkPad T480 trackpad
T480_POINTER=pointer-1739-0-Synaptics_TM3276-022
riverctl input $T480_POINTER click-method clickfinger
riverctl input $T480_POINTER drag enabled
riverctl input $T480_POINTER drag-locked enabled
riverctl input $T480_POINTER disable-while-typing disabled
riverctl input $T480_POINTER natural-scroll enabled
riverctl input $T480_POINTER tap enabled
riverctl input $T480_POINTER tap-button-map left-right-middle
# Lock screen after 10 mins idle or before sleep
# Turn off displays after 15 mins
[[ $RIVER_IDLE == "1" ]] && swayidle -w \
timeout 600 swaylock \
timeout 900 "way-displays -s DISABLED '!.'" resume "way-displays -d DISABLED '!.'" \
before-sleep swaylock &
## Mappings
# Applications
riverctl map normal Super D spawn fuzzel
riverctl map normal Super Return spawn $TERMINAL
riverctl map normal Super E spawn "$TERMINAL -e ranger"
riverctl map normal Super+Shift E spawn thunar
riverctl map normal Control+Shift Escape spawn "$TERMINAL -e btop"
echo $(realpath .) >> ~/test.txt
# Screenshots
mkdir -p ~/Pictures/Screenshots # Make screenshots folder if missing
riverctl map normal None Print spawn "~/config/screenshot.sh ~/Pictures/Screenshots full true"
riverctl map normal Alt Print spawn "~/config/screenshot.sh ~/Pictures/Screenshots region true"
# Clipboard
riverctl map normal Super V spawn "cliphist list | fuzzel --dmenu | cliphist decode | wl-copy"
# Super+Shift+Escape to lock the screen
riverctl map normal Super+Shift Escape spawn swaylock
# Super+Alt+Shift+Escape to exit session
riverctl map normal Super+Alt+Shift Escape exit
# Toggle microphone mute
riverctl map normal Super M spawn 'pamixer --default-source -t && notify-send "$([[ $(pamixer --default-source --get-mute) == "true" ]] && echo "Microphone muted" || echo "Microphone unmuted")" -t 2000'
# Super+Q to close the focused view
riverctl map normal Super+Shift Q close
# Super+J and Super+K to focus the next/previous view in the layout stack
riverctl map normal Super J focus-view next
riverctl map normal Super K focus-view previous
# Super+Shift+J and Super+Shift+K to swap the focused view with the next/previous
# view in the layout stack
riverctl map normal Super+Shift J swap next
riverctl map normal Super+Shift K swap previous
# Super+Period and Super+Comma to focus the next/previous output
riverctl map normal Super Period focus-output next
riverctl map normal Super Comma focus-output previous
# Super+Shift+{Period,Comma} to send the focused view to the next/previous output
riverctl map normal Super+Shift Period send-to-output next
riverctl map normal Super+Shift Comma send-to-output previous
# Super+Return to bump the focused view to the top of the layout stack
riverctl map normal Super I zoom
# Super+H and Super+L to decrease/increase the main ratio of rivertile(1)
riverctl map normal Super H send-layout-cmd rivertile "main-ratio -0.05"
riverctl map normal Super L send-layout-cmd rivertile "main-ratio +0.05"
# Super+Shift+H and Super+Shift+L to decrement/increment the main count of rivertile(1)
riverctl map normal Super+Shift H send-layout-cmd rivertile "main-count -1"
riverctl map normal Super+Shift L send-layout-cmd rivertile "main-count +1"
# Super+Alt+{H,J,K,L} to move views
riverctl map normal Super+Alt H move left 100
riverctl map normal Super+Alt J move down 100
riverctl map normal Super+Alt K move up 100
riverctl map normal Super+Alt L move right 100
# Super+Alt+Shift+{H,J,K,L} to resize views
riverctl map normal Super+Alt+Shift H resize horizontal -100
riverctl map normal Super+Alt+Shift J resize vertical 100
riverctl map normal Super+Alt+Shift K resize vertical -100
riverctl map normal Super+Alt+Shift L resize horizontal 100
# Super + Left Mouse Button to move views
riverctl map-pointer normal Super BTN_LEFT move-view
# Super + Right Mouse Button to resize views
riverctl map-pointer normal Super BTN_RIGHT resize-view
# Super + Middle Mouse Button to toggle float
riverctl map-pointer normal Super BTN_MIDDLE toggle-float
for i in $(seq 1 9)
do
tags=$((1 << ($i - 1)))
# Super+[1-9] to focus tag [0-8]
riverctl map normal Super $i set-focused-tags $tags
# Super+Shift+[1-9] to tag focused view with tag [0-8]
riverctl map normal Super+Shift $i set-view-tags $tags
# Super+Control+[1-9] to toggle focus of tag [0-8]
riverctl map normal Super+Control $i toggle-focused-tags $tags
# Super+Shift+Control+[1-9] to toggle tag [0-8] of focused view
riverctl map normal Super+Shift+Control $i toggle-view-tags $tags
done
# Super+0 to focus all tags
# Super+Shift+0 to tag focused view with all tags
all_tags=$(((1 << 32) - 1))
riverctl map normal Super 0 set-focused-tags $all_tags
riverctl map normal Super+Shift 0 set-view-tags $all_tags
# Super+Space to toggle float
riverctl map normal Super Space toggle-float
# Super+Shift+Space to toggle fullscreen
riverctl map normal Super+Shift Space toggle-fullscreen
# Super+{Up,Right,Down,Left} to change layout orientation
riverctl map normal Super Up send-layout-cmd rivertile "main-location top"
riverctl map normal Super Right send-layout-cmd rivertile "main-location right"
riverctl map normal Super Down send-layout-cmd rivertile "main-location bottom"
riverctl map normal Super Left send-layout-cmd rivertile "main-location left"
# Declare a passthrough mode. This mode has only a single mapping to return to
# normal mode. This makes it useful for testing a nested wayland compositor
riverctl declare-mode passthrough
# Super+F11 to enter passthrough mode
riverctl map normal Super F11 enter-mode passthrough
# Super+F11 to return to normal mode
riverctl map passthrough Super F11 enter-mode normal
# Various media key mapping examples for both normal and locked mode which do
# not have a modifier
for mode in normal locked
do
# Control audio volume
riverctl map $mode None XF86AudioRaiseVolume spawn 'pamixer -i 5'
riverctl map $mode None XF86AudioLowerVolume spawn 'pamixer -d 5'
riverctl map $mode None XF86AudioMute spawn 'pamixer --toggle-mute'
# Control MPRIS aware media players with playerctl (https://github.com/altdesktop/playerctl)
riverctl map $mode None XF86AudioMedia spawn 'playerctl play-pause'
riverctl map $mode None XF86AudioPlay spawn 'playerctl play-pause'
riverctl map $mode None XF86AudioPrev spawn 'playerctl previous'
riverctl map $mode None XF86AudioNext spawn 'playerctl next'
# Control screen backlight brightness
riverctl map $mode None XF86MonBrightnessUp spawn 'brightnessctl s +5%'
riverctl map $mode None XF86MonBrightnessDown spawn 'brightnessctl s 5%-'
done
# Set the default layout generator to be rivertile and start it.
# Leave this at the bottom
riverctl default-layout rivertile
rivertile -view-padding 4 -outer-padding 4 &

BIN
screenshot.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 473 KiB

31
screenshot.sh Executable file
View file

@ -0,0 +1,31 @@
# pancakes' wayland screenshot script
# takes screenshots, saves them, copies to clipboard, and notifies you
# depends on grim, libnotify, slurp, and wl-copy
set -e
if [ -z $2 ]; then
echo "Usage: $0 path full|region [notify=true|false]"
exit
fi
FILENAME="$1/$(date +%F_%H-%M-%S)_$2.png"
if [ $2 = "full" ]; then
# capture full screen screenshot with cursor
grim -c $FILENAME
elif [ $2 = "region" ]; then
# capture screenshot of slurped region
grim -g "$(slurp)" $FILENAME
else
echo "Mode must be either full or region"
exit
fi
NOTIFY=$3
if [ ${NOTIFY:=false} = true ]; then
notify-send "Screenshot captured" "$FILENAME"
fi
# copy screenshot to clipboard
wl-copy < $FILENAME

View file

@ -1,181 +0,0 @@
# Autotiling with xmonad 2col
exec_always "pkill -f 'python3? .+/swaymonad.py'; ~/.config/swaymonad/swaymonad.py"
# 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 fuzzel | xargs swaymsg exec --
# Wallpaper
exec cp -f ~/Pictures/Wallpapers/$(ls ~/Pictures/Wallpapers -b | shuf -n 1) ~/.wallpaper
output * bg ~/.wallpaper fill
# Idle configuration
set $lock_cmd swaylock -fF -i ~/.wallpaper -s fill --clock --effect-blur 10x1 --indicator
exec swayidle -w \
timeout 300 '$lock_cmd --grace 300' \
timeout 600 'swaymsg "output * power off"' resume 'swaymsg "output * power on"' \
before-sleep '$lock_cmd'
# Output configuration
output "AOC 27G2G4 GYGL9HA232568" {
mode 1920x1080@144.0Hz
scale 1.0
adaptive_sync on
dpms on
}
output eDP-1 {
scale 1.25
}
# Input configuration
# You can get the names of your inputs by running: swaymsg -t get_inputs
# Logitech G703 LIGHTSPEED HERO
input '1133:16518:Logitech_G703_LS' {
accel_profile flat
}
# Lenovo ThinkPad T480 trackpad
input "1739:0:Synaptics_TM3276-022" {
drag enabled
drag_lock enabled
dwt disabled
natural_scroll enabled
middle_emulation enabled
scroll_method two_finger
tap enabled
tap_button_map lrm
}
# Key bindings
# Start a terminal
bindsym Mod4+Return exec $term
# Kill focused window
bindsym Mod4+Shift+q kill
# Start your launcher
bindsym Mod4+d exec $menu
# Start file manager
bindsym Mod4+f exec $term ranger
# Start btop
bindsym Control+Shift+Escape exec $term btop
# Lock screen
bindsym Mod4+Shift+Escape exec $lock_cmd
set $grimdir GRIM_DEFAULT_DIR=~/Pictures/Screenshots
# Full screenshot
bindsym Print exec $grimdir grim
# Rectangle region screenshot
bindsym Mod1+Print exec $grimdir grim -g "$(slurp)"
# Drag floating windows by holding down Mod4 and left mouse button.
# Resize them with right mouse button + Mod4.
# Despite the name, also works for non-floating windows.
# Change normal to inverse to use left mouse button for resizing and right
# mouse button for dragging.
floating_modifier Mod4 normal
# Reload the configuration file
bindsym Mod4+Shift+c reload
# Exit sway (logs you out of your Wayland session)
bindsym Mod4+Shift+e exec swaymsg exit
# Moving around:
bindsym Mod4+i nop promote_window
bindsym Mod4+j nop focus_next_window
bindsym Mod4+k nop focus_prev_window
bindsym Mod4+h nop swap_with_prev_window
bindsym Mod4+l nop swap_with_next_window
bindsym Mod4+x nop reflectx
bindsym Mod4+y nop reflecty
bindsym Mod4+t nop transpose
bindsym Mod4+Comma nop increment_masters
bindsym Mod4+Period nop decrement_masters
# Switch to workspace
bindsym Mod4+1 workspace number 1
bindsym Mod4+2 workspace number 2
bindsym Mod4+3 workspace number 3
bindsym Mod4+4 workspace number 4
bindsym Mod4+5 workspace number 5
bindsym Mod4+6 workspace number 6
bindsym Mod4+7 workspace number 7
bindsym Mod4+8 workspace number 8
bindsym Mod4+9 workspace number 9
# Move focused container to workspace
bindsym Mod4+Shift+1 move container to workspace number 1
bindsym Mod4+Shift+2 move container to workspace number 2
bindsym Mod4+Shift+3 move container to workspace number 3
bindsym Mod4+Shift+4 move container to workspace number 4
bindsym Mod4+Shift+5 move container to workspace number 5
bindsym Mod4+Shift+6 move container to workspace number 6
bindsym Mod4+Shift+7 move container to workspace number 7
bindsym Mod4+Shift+8 move container to workspace number 8
bindsym Mod4+Shift+9 move container to workspace number 9
# Make the current focus fullscreen
bindsym Mod4+Shift+f fullscreen
# Toggle the current focus between tiling and floating mode
bindsym Mod4+Shift+space floating toggle
# Swap focus between the tiling area and the floating area
bindsym Mod4+space focus mode_toggle
# Move focus to the parent container
bindsym Mod4+a focus parent
# Resizing containers:
bindsym Mod4+Shift+h resize shrink width 30px
bindsym Mod4+Shift+l resize grow width 30px
include /etc/sway/config.d/*
# Window styling
client.focused #c0caf5 #c0caf5 #000000 #c0caf5 #c0caf5
client.focused_inactive #1a1b26 #1a1b26 #000000 #1a1b26 #1a1b26
client.unfocused #1a1b26 #1a1b26 #000000 #1a1b26 #1a1b26
client.urgent #e0af68 #e0af68 #000000 #e0af68 #e0af68
default_border pixel 2
default_floating_border pixel 2
gaps inner 8
# Window rules
focus_follows_mouse no
for_window {
[app_id="firefox"] inhibit_idle fullscreen
# XWayland
[class="discord"] inhibit_idle fullscreen
[class="firefox"] inhibit_idle fullscreen
}
# Notification daemon
exec mako
# Night filter
exec gammastep -l $(cat ~/.latlon) -t 6500K:3500K
# Status bar
exec waybar

View file

@ -1,43 +1,91 @@
{
"layer": "top",
"modules-left": ["hyprland/workspaces", "hyprland/window"],
"modules-right": ["tray", "gamemode", "bluetooth", "network", "wireplumber", "backlight", "battery", "clock"],
"spacing": 4,
"modules-left": [
"river/tags",
"tray",
"privacy"
],
"modules-center": [],
"modules-right": [
"custom/micmute",
"gamemode",
"network",
"bluetooth",
"wireplumber",
"backlight",
"battery",
"clock",
"custom/exit"
],
"tray": {
"icon-size": 16,
"spacing": 10
},
"custom/micmute": {
"exec": "~/.config/waybar/scripts/micmute.sh",
"interval": 2
},
"clock": {
"tooltip-format": "{:%Y-%m-%d}",
"format-alt": "{:%Y-%m-%d}"
},
"backlight": {
"format": "󰃠 {percent}%"
"format": "{icon} {percent}%",
"format-icons": [
"",
"",
"",
"",
"",
"",
"",
"",
""
]
},
"battery": {
"format": "{icon} {capacity}%",
"format-icons": ["󰁺", "󰁺", "󰁼", "󰁽", "󰁾", "󰁿", "󰂀", "󰂁", "󰂂", "󱈑"],
"states": {
"warning": 25,
"critical": 10
}
"warning": 30,
"critical": 15
},
"format": "{icon} {capacity}%",
"format-charging": " {capacity}%",
"format-plugged": " {capacity}%",
"format-alt": "{icon} {time}",
"format-icons": [
" ",
" ",
" ",
" ",
" "
]
},
"bluetooth": {
"format-disabled": "",
"format-off": "󰂲",
"format-on": "",
"format-connected": "󰂱 {num_connections}",
"on-click": "blueberry",
"tooltip-format": "",
"tooltip-format-on": "{controller_alias} ({controller_address_type})\t{controller_address}",
"tooltip-format-connected": "{controller_alias} ({controller_address_type})\t{controller_address}\n{device_enumerate}",
"tooltip-format-enumerate-connected": "{device_alias}\t{device_address}"
"tooltip-format": "{controller_alias}\t{controller_address}",
"tooltip-format-connected": "{controller_alias:20}\t{controller_address}\n\n{num_connections} connected:{device_enumerate}",
"tooltip-format-enumerate-connected": "\n{device_alias}\t\t{device_address}"
},
"network": {
"format": "",
"format-icons": ["󰤯 ", "󰤟 ", "󰤢 ", "󰤥 ", "󰤨 "],
"format-disconnected": "󰅛 Disconnected",
"format-ethernet": "󰛳 Wired Connection",
"format-linked": "󰛵 No Internet",
"format-wifi": "{icon} {essid}",
"on-click": "nm-connection-editor",
"tooltip-format": "{ifname}",
"tooltip-format-ethernet": "{ifname}\t{ipaddr}/{cidr}",
"tooltip-format-wifi": "{ifname} ({signalStrength}%)\t{ipaddr}/{cidr}"
"format-wifi": " {essid} ({signalStrength}%)",
"format-ethernet": " {ipaddr}/{cidr}",
"tooltip-format": " {ifname} via {gwaddr}",
"format-linked": " {ifname} (No IP)",
"format-disconnected": "⚠ Disconnected",
"format-alt": "{ifname}: {ipaddr}/{cidr}"
},
"wireplumber": {
"format": "󰕾 {volume}%",
"format-muted": "󰝟 Muted"
"format": "{icon} {volume}%",
"format-muted": "",
"format-icons": [
"",
" ",
" "
],
"on-click": "pavucontrol"
},
"custom/exit": {
"format": " ",
"on-click": "riverctl exit"
}
}
}

View file

@ -0,0 +1,2 @@
#!/bin/sh
[[ $(pamixer --default-source --get-mute) == "true" ]] && echo " Muted" || echo ""

View file

@ -1,70 +1,159 @@
* {
border: none;
font-family: "FiraCode Nerd Font", monospace;
font-size: 16pt;
/* `otf-font-awesome` is required to be installed for icons */
font-family: FontAwesome, "Noto Sans", sans-serif;
font-size: 18px;
}
window#waybar {
background: rgba(26, 27, 38, 0.8);
background-color: rgba(26, 27, 38, 0.9);
color: #c0caf5;
}
tooltip {
background: rgba(26, 27, 38, 0.8);
border: 2px solid #c0caf5;
border-radius: 5px;
window#waybar.hidden {
opacity: 0.2;
}
tooltip label {
button {
/* Use box-shadow instead of border so the text isn't offset */
box-shadow: inset 0 -2px transparent;
/* Avoid rounded borders under each button name */
border: none;
border-radius: 0;
}
button:hover {
background: inherit;
box-shadow: inset 0 -2px #414868;
}
#tags button {
color: #c0caf5;
padding: 0 5px;
}
button,
#backlight,
#battery,
#tags button:hover {
background: inherit;
border: none;
box-shadow: inset 0 -2px #414868;
text-shadow: inherit;
}
#tags button.focused {
box-shadow: inset 0 -2px #bb9af7;
}
#tags button.urgent {
box-shadow: inset 0 -2px #e0af68;
}
#custom-micmute,
#bluetooth,
#clock,
#gamemode,
#battery,
#cpu,
#memory,
#disk,
#temperature,
#backlight,
#network,
#pulseaudio,
#wireplumber,
#custom-media,
#tray,
#mode,
#idle_inhibitor,
#scratchpad,
#mpd {
padding: 0 10px;
}
#window,
#wireplumber {
border-radius: 0;
padding: 4px 10px;
#workspaces {
margin: 0 4px;
}
#battery.warning,
#network.linked {
background-color: #e0af68;
color: #1a1b26;
/* If workspaces is the leftmost module, omit left margin */
.modules-left>widget:first-child>#workspaces {
margin-left: 0;
}
#battery.critical,
/* If workspaces is the rightmost module, omit right margin */
.modules-right>widget:last-child>#workspaces {
margin-right: 0;
}
#custom-micmute {
box-shadow: inset 0 -2px #f7768e;
}
#battery {}
#battery.charging,
#battery.plugged {
box-shadow: inset 0 -2px #9ece6a;
}
#battery.critical:not(.charging) {
box-shadow: inset 0 -2px #f7768e;
}
label:focus {
background-color: rgba(26, 27, 38, 0.9);
border: 2px solid #414868;
}
#backlight {}
#network {}
#network.disconnected {
background-color: #f7768e;
color: #1a1b26;
box-shadow: inset 0 -2px #f7768e;
}
#battery.charging {
background-color: #9ece6a;
color: #1a1b26;
#network.linked {
box-shadow: inset 0 -2px #e0af68;
}
#window {
color: #c0caf5;
#privacy {
box-shadow: inset 0 -2px #e0af68;
}
#workspaces button {
background-color: #c0caf5;
color: #1a1b26;
#wireplumber {}
#wireplumber.muted {}
#tray {}
#tray>.passive {
-gtk-icon-effect: dim;
}
#workspaces button.active {
background-color: #bb9af7;
color: #1a1b26;
#tray>.needs-attention {
-gtk-icon-effect: highlight;
background-color: #eb4d4b;
}
#workspaces button.urgent {
background-color: #e0af68;
color: #1a1b26;
#idle_inhibitor {}
#idle_inhibitor.activated {}
#privacy {
padding: 0;
}
#privacy-item {
padding: 0 5px;
color: white;
}
#privacy-item.screenshare {
background-color: #cf5700;
}
#privacy-item.audio-in {
background-color: #1ca000;
}
#privacy-item.audio-out {
background-color: #0069d4;
}

View file

@ -0,0 +1,10 @@
[plugins.autopair]
github = "hlissner/zsh-autopair"
[plugins.zsh-autosuggestions]
github = "zsh-users/zsh-autosuggestions"
use = ["{{ name }}.zsh"]
[plugins.zsh-syntax-highlighting]
github = "zsh-users/zsh-syntax-highlighting"

22
zsh/.config/starship.toml Normal file
View file

@ -0,0 +1,22 @@
# Get editor completions based on the config schema
"$schema" = 'https://starship.rs/config-schema.json'
add_newline = false
format = '''
$hostname$directory$git_branch$git_status$character
'''
[git_branch]
format = "[$branch(:$remote_branch)]($style) "
style = "black"
[git_status]
format = "([$all_status$ahead_behind]($style) )"
deleted = "X"
style = "bold white"
[hostname]
ssh_only = false
format = "[$ssh_symbol$hostname]($style) "
style = "bold purple"

1
zsh/.zshenv Normal file
View file

@ -0,0 +1 @@
export RANGER_LOAD_DEFAULT_RC=FALSE

15
zsh/.zshrc Normal file
View file

@ -0,0 +1,15 @@
autoload -Uz compinit
# Auto completion
compinit
zstyle ':completion:*' menu select
zstyle ':completion::complete:*' gain-privileges 1
# Aliases
alias ls=eza
# Plugins
eval "$(sheldon source)"
# Prompt
eval "$(starship init zsh)" # THIS MUST BE THE LAST LINE