Skip to content

Latest commit

 

History

History
229 lines (205 loc) · 8.76 KB

README.md

File metadata and controls

229 lines (205 loc) · 8.76 KB

img

Information

Here are some details about my setup:




TODO

  • Switch to xrdb patch for theme switching
  • Fix the issue with hardcoded path
  • Create a list of keybindings
  • Explain installation procedure and how everything works
    • Mention the mandatory and optional dependencies
    • Make a basic guide
    • Make a detailed guide
    • Make guides for fedora and debian
  • Redo setup on an updated version of dwm-flexipatch
  • Explain the features of this setup
  • Switch to rofi from dmenu (but keep dmenu as an alternative)
  • Make new colorschemes
  • Rice Firefox or switch to vieb
  • Create conky and eww widgets
  • Remove unused patches
  • Give credit to proper persons and projects

Dependencies

Mandatory
  • Xorg
  • xrdb (for reloading xresource colorschemes)
  • Imlib2
  • dmenu (for opening programs, changing theme and using the power menu)
  • luastatus (for status info)
  • sxhkd (for shortcuts)
  • feh (for setting wallpaper)
  • font: Iosevka Nerd Font
    • You can also use any other nerd font, but don't forget to add that font to *fonts[] in config.def.h and recompile dwm)
Optional

You may choose not to install any of these and but doing so might make some things not work as intended

  • Terminal: Alacritty (main) and Kitty (dropdown)
    • if you use kitty as your main terminal, replace kitty to Alacritty in this line - RULE(.class = "kitty", .isfloating = 1) and replace Alacritty to kitty in this line - RULE(.class = "Alacritty", .tags = 1 << 0, .switchtag = 1) in config.def.h
    • if you use any other terminal then you have to modify ~/.bin/theme_changer in order to make that terminal's colorschemes to change automatically when changing theme
  • ly
  • Paru
  • networkmanager-dmenu
  • Linux Notification Center
  • Xfce Power Manager
  • picom
  • macchina

Setup

Minimal

Arch Linux

Install mandatory dependencies

  • sudo pacman -Su --needed xorg xorg-xrdb imlib2 feh ttf-iosevka-nerd

Clone this repo and cd to it

  • git clone https://github.com/junnunkarim/dotfiles-linux
  • cd dotfiles-linux

Create a desktop entry

sudo vim /usr/share/xsessions/dwm.desktop

[Desktop Entry]
Encoding=UTF-8
Name=dwm
Comment=the dynamic window manager
Exec=dwm
Icon=dwm
Type=XSession

work in progress

  • work in progress

Keybindings

Standards
super + [any key] == system main shortcuts
super + shift + [any key] == system main shortcuts
super + ctrl + shift + [any key] == system low priority shortcuts
super + alt + shift + [any key] == system low priority shortcuts
alt + [any num or alphabet key] == open applications
ctrl + [any num or alpabet key] == open other programs or scripts

Keybindings that depend on dwm
Keybinding Action
super + b toggle bar on/off
super + s switch a window form stack with master
super + c close a program
super + shift + q quit dwm (only if all programs are closed)
super + space toggle floating on/off
super + left/right increase/decrease window size
super + shift + ctrl + space cycle through all layouts
super + tab move through open tags clockwise
super + backtick move through open tags anti-clockwise
super + 0 (zero) toggle gaps on/of
super + shift + i hide/unhide window
super + shift + r restart dwm
super + f toggle fullscreen
super + 0-9 go to the specified tag
super + shift + 0-9 move selected window to the specified tag
alt + tab move through window focus clockwise
alt + backtick move through window focus anti-clockwise
Keybindings that are window manager agnostic (sxhkd)
Keybinding Action
super + return/enter open terminal
super + shift + return/enter open dropdown terminal
super + l lock screen
super + backspace reload sxhkd keybindings
super + n open network menu
super + shift + n open/close notification center
super + shift + escape force kill a program
super + t open theme switcher
super + x open powermenu
super + k show all keybindings
super + d open dmenu
super + a open dektop applications selector (dmenu)
super + ctrl + r turn on bluelight filter (redshift)
super + ctrl + e turn off bluelight filter (redshift)
super + ctrl + p open color picker (gpick)
super + alt + f open file manager (thunar)
super + alt + n open file manager (nnn)
super + alt + b open chromium
super + alt + e open firefox
super + alt + e open vim
super + alt + h open bottom
prtsc take fullscreen screenshot now
super + prtsc take interective screenshot
alt + prtsc take fullscreen screenshot after 5 sec
ctrl + prtsc take fullscreen screenshot after 10 sec
super + F1 increase brightness
super + F2 decrease brightness
super + F5 increase volume
super + F6 decrease volume
super + F7 toggle mute on/off

Active dwm Patches

click here
  • BAR_AWESOMEBAR_PATCH
  • BAR_EWMHTAGS_PATCH
  • BAR_LTSYMBOL_PATCH
  • BAR_STATUS_PATCH
  • BAR_STATUSBUTTON_PATCH
  • BAR_STATUS2D_PATCH
  • BAR_SYSTRAY_PATCH
  • BAR_UNDERLINETAGS_PATCH
  • BAR_WINICON_PATCH
  • BAR_TITLE_LEFT_PAD_PATCH
  • BAR_BORDER_PATCH
  • BAR_CENTEREDWINDOWNAME_PATCH
  • BAR_IGNORE_XFT_ERRORS_WHEN_DRAWING_TEXT_PATCH
  • BAR_PADDING_VANITYGAPS_PATCH
  • ATTACHBOTTOM_PATCH
  • CENTER_PATCH
  • COMBO_PATCH
  • COOL_AUTOSTART_PATCH
  • CYCLELAYOUTS_PATCH
  • FOCUSONNETACTIVE_PATCH
  • NET_CLIENT_LIST_STACKING_PATCH
  • ONLYQUITONEMPTY_PATCH
  • RESTARTSIG_PATCH
  • SHIFTVIEW_CLIENTS_PATCH
  • STACKER_PATCH
  • SWITCHTAG_PATCH
  • TOGGLEFULLSCREEN_PATCH
  • VANITYGAPS_PATCH
  • ZOOMSWAP_PATCH
  • BSTACK_LAYOUT
  • DECK_LAYOUT
  • FIBONACCI_DWINDLE_LAYOUT
  • HORIZGRID_LAYOUT
  • TILE_LAYOUT
  • MONOCLE_LAYOUT