Skip to content

A1nz2802/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

44 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

xmonad

Dependencies

sudo pacman -S --noconfirm \
  # Window Managers & Core Utils
  qtile xmonad xmonad-contrib xmobar xdotool \
  # System & Utilities
  pacman-contrib trayer picom scrot nitrogen python-psutil dconf-editor dunst pasystray \
  # Theming & Appearance
  papirus-icon-theme gnome-themes-extra breeze-gtk breeze gnome-tweaks lxappearance \
  # Terminal & Shell
  zsh zsh-autocomplete zsh-autosuggestions zsh-syntax-highlighting \
  # Clipboard & File Management (ranger)
  xclip copyq ueberzugpp ffmpegthumbnailer poppler \
  # Fonts & Emojis
  noto-fonts-emoji rofi-emoji \
  # Bluetooth
  bluez bluez-utils blueman \
  # Keyring
  gnome-keyring seahorse
yay -S --noconfirm pwvucontrol arc-gtk-theme

Neovim Config

If you can see my nvim config, go here.

SDDM Theme

Install the Astronaut theme following the automated configuration here.

Cursor Theming

1- Cursor for SDDM

To set a custom cursor theme for SDDM:

  • Navigate to /usr/share/icons/default and edit the index.theme file:

    [Icon Theme]
    Inherits=<your_theme>
    CursorTheme=True
    
  • To change the cursor size, edit the SDDM configuration file located at /etc/sddm.conf:

    [Theme]
    Current=sddm-astronaut-theme
    
    [General]
    CursorTheme=<your_theme>
    CursorSize=64
    

Note

Keep in mind that some cursor themes may only support specific sizes or include only one predefined size.

  • Restart SDDM for the changes to take effect:

    sudo systemctl restart sddm

2- Cursor for All Applications (Browser, Terminal, etc.)

To apply the cursor theme system-wide:

  • Edit (or create) the file ~/.gtkrc-2.0:

    include "/home/a1nz/.gtkrc-2.0.mine"
    gtk-theme-name="Arc-Dark"
    gtk-icon-theme-name="Papirus-Dark"
    gtk-font-name="Cantarell 11"
    gtk-cursor-theme-name="Kafka"
    gtk-cursor-theme-size=64
    
  • Alternatively, you can use lxappearance to configure cursor settings via a GUI:

    sudo pacman -S lxappearance

3- Cursor Settings for X with xsetroot

  • Install the necessary packages:

    sudo pacman -S xorg-xinit xorg-xsetroot
  • Create the file ~/.Xresources with the following content:

    Xcursor.theme: Your-Theme
    Xcursor.size: 64
    
  • Create or edit ~/.xprofile and add:

        # Screens
        hdmi=$(xrandr | grep ' connected' | grep 'HDMI' | awk '{print $1}')
    
        if [ "$hdmi" = "HDMI-1" ]; then
            xrandr \
                --output DP-0 --primary --mode 3440x1440 \
                --output HDMI-1 --mode 3840x2160 &
        else
            xrandr \
                --output DP-0 --primary --mode 3440x1440 \
                --output HDMI-1 --off \
                --output eDP-1 --off &
        fi

Font Installation

sh install_fonts.sh

To list all installed Nerd Font families recognized by your system:

fc-list | grep "Nerd Font" | cut -d: -f2 | sort -u

or you can use font manager

sudo pacman -S font-manager

Give execute permissions to local scripts:

chmod +x ~/.local/bin/*
chmod +x ~/xmobar/trayer-padding-icon.sh

Zsh

  1. Install Zsh and plugins:
sudo pacman -S zsh zsh-autosuggestions zsh-syntax-highlighting zsh-autocomplete
  1. Change default shell for user and root:
sudo usermod --shell /usr/bin/zsh a1nz
sudo usermod --shell /usr/bin/zsh root
  1. Link root's zshrc to user configuration:
sudo ln -sf /home/a1nz/.zshrc /root/.zshrc

GRUB Theme

  1. Install Elegant GRUB theme:

https://github.com/vinceliuice/Elegant-grub2-themes

  1. Configuration details:
  • Theme path: /boot/grub/themes/Elegant-forest-window-right-dark
  • Configuration file: /etc/default/grub
  • Apply changes:
    sudo grub-mkconfig -o /boot/grub/grub.cfg

Convert GRUB background for ultrawide displays:

magick \
  \( background.jpg -crop 1x1080+0+0 -resize 440x1440! \) \
  \( background.jpg -resize 2560x1440! \) \
  \( background.jpg -crop 1x1080+1919+0 -resize 440x1440! \) \
  +append extended_image.jpg

VMware Tools Setup

sudo pacman -S open-vm-tools
sudo systemctl enable vmtoolsd.service
sudo systemctl enable vmware-vmblock-fuse.service

Display Configuration for VM

Set up custom resolution for ultrawide displays:

sudo pacman -S xorg-xrandr

# Generate modeline for 3440x1440@60Hz
cvt 3440 1440 60 -r

# Add custom resolution
xrandr --newmode "3440x1440R" 319.75 3440 3488 3520 3600 1440 1443 1453 1481 +hsync -vsync
xrandr --addmode Virtual-1 "3440x1440R"
xrandr --output Virtual-1 --mode "3440x1440R"

Lock Screen

sudo pacman -S xss-lock
yay -S betterlockscreen

Set wallpaper for lockscreen

betterlockscreen -u ~/wallpapers/some-image.jpg

Manual lock

betterlockscreen --lock
betterlockscreen --lock blur

Test lock inmediately

xset s activate

To automatically lock the screen after a given time (e.g. 5 minutes), add the following to your .xprofile

xset s 300 300
xss-lock -- ~/.local/bin/lock &

XMonad Keybindings

Keybinding Description
 + 󰘶 + q Quit XMonad
 + w Kill focused window
Switch to Workspace
 + [1-9] Switch to workspace [1–9]
 + 󰘶 + [1-9] Send window to workspace [1–9]
Window Navigation
 + ↓ Move focus down
 + ↑ Move focus up
 + → Swap focused window with next
 + ← Swap focused window with previous
Rofi
 + m App launcher (rofi -show drun)
 + 󰘶 + m Window switcher (rofi -show)
 + 󰘶 + . Emoji picker (rofi -modi emoji)
 + g Google search launcher via rofi
Scrot (Screenshots)
 + 󰘶 + s Select area screenshot (file + clipboard)
 + s Full screenshot (file + clipboard)
Favorite Programs
 + Return Launch terminal
 + b Launch web browser
 + e Launch file manager
Monitors
 + . Focus next monitor
 + , Focus previous monitor
Layouts
 + Tab Switch to next layout
 + Space Toggle full/noborder layout + toggle struts
Window Resizing
 + 󰘶 + ← Shrink window horizontally
 + 󰘶 + → Expand window horizontally
 + 󰘶 + ↓ Shrink window vertically
 + 󰘶 + ↑ Expand window vertically
Floating Windows
 + t Sink (tile) focused floating window
 + 󰘶 + t Sink all floating windows
Scratchpads
 + 󰘶 + Return Toggle scratchpad terminal

Kitty keybindings

Keybinding Description
Split Navigation
Alt + ← → ↑ ↓ Move between splits
Split Management
Ctrl + Shift + Return Create split
Ctrl + Shift + W Close current split
Ctrl + Shift + Z Fullscreen split
Ctrl + Shift + R Resize split
Tabs (Workspaces)
Ctrl + Shift + T New tab
Ctrl + Shift + Q Close current tab
Ctrl + Shift + ← → ↑ ↓ Move between tabs
Ctrl + Shift + , . Swap tabs position
Ctrl + Shift + Alt + T Rename tab
Clipboard Buffers
F1 Copy to buffer A
F2 Paste from buffer A
F3 Copy to buffer B
F4 Paste from buffer B
Misc / Utilities
Ctrl + Shift + H Open scrollback pager
Ctrl + Shift + L Toggle kitty layout modes
kitty +kitten show_key Show current keybindings

Neovim keybindings

Keybinding Description
Normal Mode - Insertion
a Insert after the cursor
A Insert at the end of the line
i Insert before the cursor
I Insert at the beginning of the line
o Open new line below and enter insert mode
O Open new line above and enter insert mode
Normal Mode - Navigation
k Move cursor up
j Move cursor down
l Move cursor right
h Move cursor left
w Jump forward to the start of next word
W Jump forward to next WORD (ignores punctuation)
e Jump to end of current/next word
E Jump to end of current/next WORD
b Jump to start of previous word
B Jump to start of previous WORD
$ Go to end of line
0 Go to beginning of line
gg Go to first line of file
G Go to last line of file
Ctrl + d Scroll down half a screen
Ctrl + u Scroll up half a screen
Ctrl + f Scroll down one full sreen
Ctrl + b Scroll up one full screen
Normal Mode - Editing/Deleting
x Delete character under cursor
X Delete character before cursor
dw Delete from cursor to end of word
db Delete from cursor to start of word
dd Delete (cut) entire line
cw Change word (delete and enter insert mode)
cc Change entire line
r<char> Replace character under cursor with
s Delete character and enter insert mode
S Delete line and enter insert mode
Normal Mode - Yank/Paste
y Yank (copy) selection
yy Yank entire line
p Paste after cursor
P Paste before cursor
"+p Paste from system clipboard
"+y Yank to system clipboard
Normal Mode - Undo/Redo
u Undo last change
Ctrl + r Redo last undone change
Normal Mode - Indentation/Formatting
>> Indent line to the right
<< Indent line to the left
= Auto-indent current line
=G Auto-indent to end of file
Visual Mode
v Start visual character-wise selection
V Start visual line-wise selection
Ctrl + v Start visual block mode
Shift + v Start visual line mode
o Move to opposite end of selection
d Delete selection
c Change selection (delete and enter insert)
> Indent selection right
< Indent selection left
= Auto-indent selection
u Convert selection to lowercase
U Convert selection to uppercase

About

My Arch/Kali linux setup for a professional development/hacking environment.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published