diff --git a/.config/i3/config-laptop b/.config/i3/config-laptop new file mode 100644 index 0000000..966e80e --- /dev/null +++ b/.config/i3/config-laptop @@ -0,0 +1,192 @@ +# This file has been auto-generated by i3-config-wizard(1). +# It will not be overwritten, so edit it as you like. +# +# Should you change your keyboard layout some time, delete +# this file and re-run i3-config-wizard(1). +# + +# i3 config file (v4) +# +# Please see https://i3wm.org/docs/userguide.html for a complete reference! + +set $mod Mod4 +set $terminal kitty + +# 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 + +# 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 8 + +# 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 nm-applet + +# 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 + +# start a terminal +bindsym $mod+Return exec $terminal + +# kill focused window +bindsym $mod+Shift+q kill + +# start dmenu (a program launcher) +bindsym $mod+d exec --no-startup-id rofi -show run +bindsym $mod+Shift+d exec --no-startup-id rofi-theme-selector + +# change focus +bindsym $mod+j focus left +bindsym $mod+k focus down +bindsym $mod+l focus up +bindsym $mod+odiaeresis 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+odiaeresis move right + +# 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 + +# 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 $ws1 +bindsym $mod+2 workspace number $ws2 +bindsym $mod+3 workspace number $ws3 +bindsym $mod+4 workspace number $ws4 +bindsym $mod+5 workspace number $ws5 +bindsym $mod+6 workspace number $ws6 +bindsym $mod+7 workspace number $ws7 +bindsym $mod+8 workspace number $ws8 +bindsym $mod+9 workspace number $ws9 +bindsym $mod+0 workspace number $ws10 + +# move focused container to workspace +bindsym $mod+Shift+1 move container to workspace number $ws1 +bindsym $mod+Shift+2 move container to workspace number $ws2 +bindsym $mod+Shift+3 move container to workspace number $ws3 +bindsym $mod+Shift+4 move container to workspace number $ws4 +bindsym $mod+Shift+5 move container to workspace number $ws5 +bindsym $mod+Shift+6 move container to workspace number $ws6 +bindsym $mod+Shift+7 move container to workspace number $ws7 +bindsym $mod+Shift+8 move container to workspace number $ws8 +bindsym $mod+Shift+9 move container to workspace number $ws9 +bindsym $mod+Shift+0 move container to workspace number $ws10 + +# 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 --no-startup-id i3 exit + +# resize window (you can also use the mouse for that) +mode "resize" { + # bindings for the arrow keys + bindsym Left resize shrink width 3 px or 3 ppt + bindsym Down resize grow height 3 px or 3 ppt + bindsym Up resize shrink height 3 px or 3 ppt + bindsym Right resize grow width 3 px or 3 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" + +# Start i3bar to display a workspace bar (plus the system information i3status +# finds out, if available) +# bar { +# status_command i3status +# } + + + +# i3gaps +gaps outer 4 +gaps inner 8 +#for_window [class="^.*"] border pixel 3 + +# titlebar-border-color | titlebar-color | window-border-color | +# titlebar-text-color | border-indicator-color +client.focused #00ffa1 #00ffa1 #333333 #00ffa1 #00ffa1 + +# titlebar-border-color | window-border-color | titlebar-text-color +client.unfocused #555555 #555555 #ffffff + +# BINDSYMS +bindsym XF86MonBrightnessUp exec --no-startup-id light -A 5 +bindsym XF86MonBrightnessDown exec --no-startup-id light -U 5 + + +# STARTUPS +exec picom +exec polybar top +exec --no-startup-id nitrogen --restore diff --git a/.config/kitty/kitty.conf b/.config/kitty/kitty.conf index d5df657..0bbe409 100644 --- a/.config/kitty/kitty.conf +++ b/.config/kitty/kitty.conf @@ -1,4 +1,4 @@ -font_size 15 +font_size 14 cursor_shape underline window_margin_width 5 diff --git a/.config/picom/i3/config-laptop b/.config/picom/i3/config-laptop new file mode 100644 index 0000000..966e80e --- /dev/null +++ b/.config/picom/i3/config-laptop @@ -0,0 +1,192 @@ +# This file has been auto-generated by i3-config-wizard(1). +# It will not be overwritten, so edit it as you like. +# +# Should you change your keyboard layout some time, delete +# this file and re-run i3-config-wizard(1). +# + +# i3 config file (v4) +# +# Please see https://i3wm.org/docs/userguide.html for a complete reference! + +set $mod Mod4 +set $terminal kitty + +# 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 + +# 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 8 + +# 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 nm-applet + +# 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 + +# start a terminal +bindsym $mod+Return exec $terminal + +# kill focused window +bindsym $mod+Shift+q kill + +# start dmenu (a program launcher) +bindsym $mod+d exec --no-startup-id rofi -show run +bindsym $mod+Shift+d exec --no-startup-id rofi-theme-selector + +# change focus +bindsym $mod+j focus left +bindsym $mod+k focus down +bindsym $mod+l focus up +bindsym $mod+odiaeresis 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+odiaeresis move right + +# 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 + +# 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 $ws1 +bindsym $mod+2 workspace number $ws2 +bindsym $mod+3 workspace number $ws3 +bindsym $mod+4 workspace number $ws4 +bindsym $mod+5 workspace number $ws5 +bindsym $mod+6 workspace number $ws6 +bindsym $mod+7 workspace number $ws7 +bindsym $mod+8 workspace number $ws8 +bindsym $mod+9 workspace number $ws9 +bindsym $mod+0 workspace number $ws10 + +# move focused container to workspace +bindsym $mod+Shift+1 move container to workspace number $ws1 +bindsym $mod+Shift+2 move container to workspace number $ws2 +bindsym $mod+Shift+3 move container to workspace number $ws3 +bindsym $mod+Shift+4 move container to workspace number $ws4 +bindsym $mod+Shift+5 move container to workspace number $ws5 +bindsym $mod+Shift+6 move container to workspace number $ws6 +bindsym $mod+Shift+7 move container to workspace number $ws7 +bindsym $mod+Shift+8 move container to workspace number $ws8 +bindsym $mod+Shift+9 move container to workspace number $ws9 +bindsym $mod+Shift+0 move container to workspace number $ws10 + +# 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 --no-startup-id i3 exit + +# resize window (you can also use the mouse for that) +mode "resize" { + # bindings for the arrow keys + bindsym Left resize shrink width 3 px or 3 ppt + bindsym Down resize grow height 3 px or 3 ppt + bindsym Up resize shrink height 3 px or 3 ppt + bindsym Right resize grow width 3 px or 3 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" + +# Start i3bar to display a workspace bar (plus the system information i3status +# finds out, if available) +# bar { +# status_command i3status +# } + + + +# i3gaps +gaps outer 4 +gaps inner 8 +#for_window [class="^.*"] border pixel 3 + +# titlebar-border-color | titlebar-color | window-border-color | +# titlebar-text-color | border-indicator-color +client.focused #00ffa1 #00ffa1 #333333 #00ffa1 #00ffa1 + +# titlebar-border-color | window-border-color | titlebar-text-color +client.unfocused #555555 #555555 #ffffff + +# BINDSYMS +bindsym XF86MonBrightnessUp exec --no-startup-id light -A 5 +bindsym XF86MonBrightnessDown exec --no-startup-id light -U 5 + + +# STARTUPS +exec picom +exec polybar top +exec --no-startup-id nitrogen --restore diff --git a/.config/picom/kitty/kitty.conf b/.config/picom/kitty/kitty.conf new file mode 100644 index 0000000..0bbe409 --- /dev/null +++ b/.config/picom/kitty/kitty.conf @@ -0,0 +1,31 @@ +font_size 14 +cursor_shape underline + +window_margin_width 5 + +background #323232 +foreground #ffffff +cursor #d6d6d6 +selection_background #5b5b5b +selection_foreground #323232 +color0 #353535 +color8 #535353 +color1 #d25252 +color9 #f00c0c +color2 #a4c161 +color10 #c1df74 +color3 #ffc56d +color11 #e1e48a +color4 #6c99ba +color12 #8ab6d9 +color5 #d096d9 +color13 #efb5f7 +color6 #bdd6ff +color14 #dbf4ff +color7 #ededec +color15 #ffffff +active_tab_foreground #ffffff +active_tab_background #535353 +inactive_tab_foreground #ffffff +inactive_tab_background #353535 + diff --git a/.config/picom/picom.conf b/.config/picom/picom.conf new file mode 100644 index 0000000..6fb3805 --- /dev/null +++ b/.config/picom/picom.conf @@ -0,0 +1,5 @@ +# ~/.config/picom/picom.conf + +active-opacity = 0.85; +inactive-opacity = 0.70; + diff --git a/.config/polybar/config-laptop b/.config/polybar/config-laptop new file mode 100644 index 0000000..492bfdc --- /dev/null +++ b/.config/polybar/config-laptop @@ -0,0 +1,142 @@ +[colors] +background = #222 +foreground = #eee +linecolor = #fba922 +bordercolor = #333 +accent = #e60053 + +[settings] +screenchange-reload = true + +[global/wm] +margin-top = 0 +margin-bottom = 0 + +[bar/top] +enable-ipc = true +monitor = eDP +width = 100% +height = 24 + +background = ${colors.background} +foreground = ${colors.foreground} + +line-color = ${colors.linecolor} +underline-size = 1 +overline-size = 2 + +border-bottom-size = 2 +border-bottom-color = ${colors.bordercolor} + +padding-left = 0 +padding-right = 2 +module-margin-left = 1 +module-margin-right = 2 + +font-0 = dina:pixelsize=9;1 +font-1 = siji:pixelsize=10;1 +font-2 = unifont:size=6;1 + +modules-left = i3 +modules-right = volume battery memory cpu date + +tray-position = right +tray-padding = 4 +tray-maxsize = 16 + +wm-restack = bspwm + +scroll-up = bspwm-deskprev +scroll-down = bspwm-desknext + +bspwm-focused-overline = ${colors.linecolor} +bspwm-focused-underline = #cc333333 + +[module/fs-root] +type = internal/fs +mount-0 = / +label-mounted = %{F#e60053}%percentage_used%%%{F-} used of %mountpoint% + +[module/i3] +type = internal/i3 +index-sort = true +pin-workspaces = true +wrapping-scroll = true + +format = + +label-mode = %mode% +label-mode-padding = 2 +label-mode-background = ${colors.accent} + +label-focused = %index% +label-focused-foreground = #cccccc +label-focused-underline = #cccccc +label-focused-padding = 3 + +label-unfocused = %index% +label-unfocused-padding = 3 + +label-urgent = %index%! +label-urgent-background = #00ffa1 +label-urgent-padding = 3 + +label-visible = %index% +label-visible-padding = 3 + +[module/cpu] +type = internal/cpu +interval = 2 +label = %percentage%% +format-prefix = "CPU " +format-prefix-foreground = #666 + +[module/memory] +type = internal/memory +interval = 2 +label = %percentage_used%% +format-prefix = "RAM " +format-prefix-foreground = #666 + +[module/date] +type = internal/date +label = %{F#666}TIME%{F-} %time% - %date% +label-prefix = "TIME" +date = %d.%m.%Y +time = %H:%M +interval = 5 + +[module/volume] +type = internal/pulseaudio +speaker-mixer = Speaker +headphone-mixer = Headphone +headphone-id = 9 + +format-volume = +format-volume-prefix = "AUDIO " +format-volume-prefix-foreground = #666 +label-volume = %percentage%% +label-volume-foreground = ${root.foreground} + +format-muted-foreground = #777 +label-muted = AUDIO MUTED + +[module/battery] +type = internal/battery +full-at = 99 +time-format = %H:%M + +format-charging = +format-charging-prefix = "CHR " +format-charging-prefix-foreground = #666 +label-charging = %percentage%% - %time% + +format-discharging = +format-discharging-prefix = "BAT " +format-discharging-prefix-foreground = #666 +label-discharging = %percentage%% - %time% + +format-full = +format-full-prefix = "FLL " +format-full-prefix-foreground = #666 + diff --git a/.config/xmobar/xmobar.config b/.config/xmobar/xmobar.config deleted file mode 100644 index 2a68f85..0000000 --- a/.config/xmobar/xmobar.config +++ /dev/null @@ -1,39 +0,0 @@ -Config { font = "xft:monospace" - , additionalFonts = [] - , borderColor = "black" - , border = TopB - , bgColor = "#303030" - , fgColor = "grey" - , alpha = 255 - , position = Static { xpos = 0 , ypos = 0, width = 1920, height = 30 } - , textOffset = -1 - , iconOffset = -1 - , lowerOnStart = True - , pickBroadest = False - , persistent = False - , hideOnStart = False - , iconRoot = "." - , allDesktops = True - , overrideRedirect = True - , commands = [ - Run Cpu ["-L","3","-H","50", "--normal","green","--high","red"] 10 - , Run Memory ["-t","Mem: %"] 10 - , Run Swap [] 10 - , Run Com "uname" ["-s","-r"] "" 36000 - , Run Date "%H:%M - %d.%m.%Y" "date" 10 - , Run Wireless "wlp1s0" [ "-t", "" ] 10 - , Run Battery [ - "-t", ": % ", - "--", - --"-c", "charge_full", - "-O", "AC", - "-o", "Bat", - "-h", "green", - "-l", "red" - ] 10 - ] - , sepChar = "%" - , alignSep = "}{" - , template = " %cpu% | %memory% * %swap% }\ - \{ %wlp1s0wi% | %battery% | %date% | %uname% " -} diff --git a/.xmonad/xmonad.hs b/.xmonad/xmonad.hs deleted file mode 100644 index 4843fd8..0000000 --- a/.xmonad/xmonad.hs +++ /dev/null @@ -1,344 +0,0 @@ --- --- xmonad example config file. --- --- A template showing all available configuration hooks, --- and how to override the defaults in your own xmonad.hs conf file. --- --- Normally, you'd only override those defaults you care about. --- - -import XMonad -import Data.Monoid -import System.Exit -import XMonad.Util.Run -import XMonad.Util.SpawnOnce -import XMonad.Hooks.ManageDocks - -import XMonad.Layout.Gaps -import XMonad.Layout.Spacing -import XMonad.Layout.LayoutModifier - -import qualified XMonad.StackSet as W -import qualified Data.Map as M - --- The preferred terminal program, which is used in a binding below and by --- certain contrib modules. --- -myTerminal = "kitty" - --- Whether focus follows the mouse pointer. -myFocusFollowsMouse :: Bool -myFocusFollowsMouse = True - --- Whether clicking on a window to focus also passes the click to the window -myClickJustFocuses :: Bool -myClickJustFocuses = False - --- Width of the window border in pixels. --- -myBorderWidth = 4 - --- modMask lets you specify which modkey you want to use. The default --- is mod1Mask ("left alt"). You may also consider using mod3Mask --- ("right alt"), which does not conflict with emacs keybindings. The --- "windows key" is usually mod4Mask. --- -myModMask = mod4Mask - --- The default number of workspaces (virtual screens) and their names. --- By default we use numeric strings, but any string may be used as a --- workspace name. The number of workspaces is determined by the length --- of this list. --- --- A tagging example: --- --- > workspaces = ["web", "irc", "code" ] ++ map show [4..9] --- -myWorkspaces = ["1","2","3","4","5","6","7","8","9"] - --- Border colors for unfocused and focused windows, respectively. --- -myNormalBorderColor = "#dddddd" -myFocusedBorderColor = "#aaaaff" - ------------------------------------------------------------------------- --- Key bindings. Add, modify or remove key bindings here. --- -myKeys conf@(XConfig {XMonad.modMask = modm}) = M.fromList $ - - -- launch a terminal - [ ((modm .|. shiftMask, xK_Return), spawn $ XMonad.terminal conf) - - -- launch dmenu - , ((modm, xK_p ), spawn "rofi -show run") - - -- launch gmrun - , ((modm .|. shiftMask, xK_p ), spawn "gmrun") - - -- close focused window - , ((modm .|. shiftMask, xK_c ), kill) - - -- Rotate through the available layout algorithms - , ((modm, xK_space ), sendMessage NextLayout) - - -- Reset the layouts on the current workspace to default - , ((modm .|. shiftMask, xK_space ), setLayout $ XMonad.layoutHook conf) - - -- Resize viewed windows to the correct size - , ((modm, xK_n ), refresh) - - -- Move focus to the next window - , ((modm, xK_Tab ), windows W.focusDown) - - -- Move focus to the next window - , ((modm, xK_j ), windows W.focusDown) - - -- Move focus to the previous window - , ((modm, xK_k ), windows W.focusUp ) - - -- Move focus to the master window - , ((modm, xK_m ), windows W.focusMaster ) - - -- Swap the focused window and the master window - , ((modm, xK_Return), windows W.swapMaster) - - -- Swap the focused window with the next window - , ((modm .|. shiftMask, xK_j ), windows W.swapDown ) - - -- Swap the focused window with the previous window - , ((modm .|. shiftMask, xK_k ), windows W.swapUp ) - - -- Shrink the master area - , ((modm, xK_h ), sendMessage Shrink) - - -- Expand the master area - , ((modm, xK_l ), sendMessage Expand) - - -- Push window back into tiling - , ((modm, xK_t ), withFocused $ windows . W.sink) - - -- Increment the number of windows in the master area - , ((modm , xK_comma ), sendMessage (IncMasterN 1)) - - -- Deincrement the number of windows in the master area - , ((modm , xK_period), sendMessage (IncMasterN (-1))) - - -- Toggle the status bar gap - -- Use this binding with avoidStruts from Hooks.ManageDocks. - -- See also the statusBar function from Hooks.DynamicLog. - -- - -- , ((modm , xK_b ), sendMessage ToggleStruts) - - -- Quit xmonad - , ((modm .|. shiftMask, xK_q ), spawn "xfce4-session-logout") - - -- Restart xmonad - , ((modm , xK_q ), spawn "xmonad --recompile; xmonad --restart") - - -- Run xmessage with a summary of the default keybindings (useful for beginners) - , ((modm .|. shiftMask, xK_slash ), spawn ("echo \"" ++ help ++ "\" | xmessage -file -")) - ] - ++ - - -- - -- mod-[1..9], Switch to workspace N - -- mod-shift-[1..9], Move client to workspace N - -- - [((m .|. modm, k), windows $ f i) - | (i, k) <- zip (XMonad.workspaces conf) [xK_1 .. xK_9] - , (f, m) <- [(W.greedyView, 0), (W.shift, shiftMask)]] - ++ - - -- - -- mod-{w,e,r}, Switch to physical/Xinerama screens 1, 2, or 3 - -- mod-shift-{w,e,r}, Move client to screen 1, 2, or 3 - -- - [((m .|. modm, key), screenWorkspace sc >>= flip whenJust (windows . f)) - | (key, sc) <- zip [xK_w, xK_e, xK_r] [0..] - , (f, m) <- [(W.view, 0), (W.shift, shiftMask)]] - - ------------------------------------------------------------------------- --- Mouse bindings: default actions bound to mouse events --- -myMouseBindings (XConfig {XMonad.modMask = modm}) = M.fromList $ - - -- mod-button1, Set the window to floating mode and move by dragging - [ ((modm, button1), (\w -> focus w >> mouseMoveWindow w - >> windows W.shiftMaster)) - - -- mod-button2, Raise the window to the top of the stack - , ((modm, button2), (\w -> focus w >> windows W.shiftMaster)) - - -- mod-button3, Set the window to floating mode and resize by dragging - , ((modm, button3), (\w -> focus w >> mouseResizeWindow w - >> windows W.shiftMaster)) - - -- you may also bind events to the mouse scroll wheel (button4 and button5) - ] - ------------------------------------------------------------------------- --- Layouts: - --- You can specify and transform your layouts by modifying these values. --- If you change layout bindings be sure to use 'mod-shift-space' after --- restarting (with 'mod-q') to reset your layout state to the new --- defaults, as xmonad preserves your old layout settings by default. --- --- The available layouts. Note that each layout is separated by |||, --- which denotes layout choice. --- -myLayout = spacing 8 $ avoidStruts (tiled ||| Mirror tiled ||| Full) - where - -- default tiling algorithm partitions the screen into two panes - tiled = Tall nmaster delta ratio - - -- The default number of windows in the master pane - nmaster = 1 - - -- Default proportion of screen occupied by master pane - ratio = 1/2 - - -- Percent of screen to increment by when resizing panes - delta = 3/100 - ------------------------------------------------------------------------- --- Window rules: - --- Execute arbitrary actions and WindowSet manipulations when managing --- a new window. You can use this to, for example, always float a --- particular program, or have a client always appear on a particular --- workspace. --- --- To find the property name associated with a program, use --- > xprop | grep WM_CLASS --- and click on the client you're interested in. --- --- To match on the WM_NAME, you can use 'title' in the same way that --- 'className' and 'resource' are used below. --- -myManageHook = composeAll - [ className =? "MPlayer" --> doFloat - , className =? "Gimp" --> doFloat - , resource =? "desktop_window" --> doIgnore - , resource =? "kdesktop" --> doIgnore ] - ------------------------------------------------------------------------- --- Event handling - --- * EwmhDesktops users should change this to ewmhDesktopsEventHook --- --- Defines a custom handler function for X Events. The function should --- return (All True) if the default handler is to be run afterwards. To --- combine event hooks use mappend or mconcat from Data.Monoid. --- -myEventHook = mempty - ------------------------------------------------------------------------- --- Status bars and logging - --- Perform an arbitrary action on each internal state change or X event. --- See the 'XMonad.Hooks.DynamicLog' extension for examples. --- -myLogHook = return () - ------------------------------------------------------------------------- --- Startup hook - --- Perform an arbitrary action each time xmonad starts or is restarted --- with mod-q. Used by, e.g., XMonad.Layout.PerWorkspace to initialize --- per-workspace layout choices. --- --- By default, do nothing. -myStartupHook = do - spawnOnce "nitrogen --restore &" - spawnOnce "compton &" - ------------------------------------------------------------------------- --- Now run xmonad with all the defaults we set up. - --- Run xmonad with the settings you specify. No need to modify this. --- -main = do - xmproc <- spawnPipe "xmobar ~/.config/xmobar/xmobar.config" - xmonad $ docks defaults - --- A structure containing your configuration settings, overriding --- fields in the default config. Any you don't override, will --- use the defaults defined in xmonad/XMonad/Config.hs --- --- No need to modify this. --- -defaults = def { - -- simple stuff - terminal = myTerminal, - focusFollowsMouse = myFocusFollowsMouse, - clickJustFocuses = myClickJustFocuses, - borderWidth = myBorderWidth, - modMask = myModMask, - workspaces = myWorkspaces, - normalBorderColor = myNormalBorderColor, - focusedBorderColor = myFocusedBorderColor, - - -- key bindings - keys = myKeys, - mouseBindings = myMouseBindings, - - -- hooks, layouts - layoutHook = myLayout, - manageHook = myManageHook, - handleEventHook = myEventHook, - logHook = myLogHook, - startupHook = myStartupHook - } - --- | Finally, a copy of the default bindings in simple textual tabular format. -help :: String -help = unlines ["The default modifier key is 'alt'. Default keybindings:", - "", - "-- launching and killing programs", - "mod-Shift-Enter Launch xterminal", - "mod-p Launch dmenu", - "mod-Shift-p Launch gmrun", - "mod-Shift-c Close/kill the focused window", - "mod-Space Rotate through the available layout algorithms", - "mod-Shift-Space Reset the layouts on the current workSpace to default", - "mod-n Resize/refresh viewed windows to the correct size", - "", - "-- move focus up or down the window stack", - "mod-Tab Move focus to the next window", - "mod-Shift-Tab Move focus to the previous window", - "mod-j Move focus to the next window", - "mod-k Move focus to the previous window", - "mod-m Move focus to the master window", - "", - "-- modifying the window order", - "mod-Return Swap the focused window and the master window", - "mod-Shift-j Swap the focused window with the next window", - "mod-Shift-k Swap the focused window with the previous window", - "", - "-- resizing the master/slave ratio", - "mod-h Shrink the master area", - "mod-l Expand the master area", - "", - "-- floating layer support", - "mod-t Push window back into tiling; unfloat and re-tile it", - "", - "-- increase or decrease number of windows in the master area", - "mod-comma (mod-,) Increment the number of windows in the master area", - "mod-period (mod-.) Deincrement the number of windows in the master area", - "", - "-- quit, or restart", - "mod-Shift-q Quit xmonad", - "mod-q Restart xmonad", - "mod-[1..9] Switch to workSpace N", - "", - "-- Workspaces & screens", - "mod-Shift-[1..9] Move client to workspace N", - "mod-{w,e,r} Switch to physical/Xinerama screens 1, 2, or 3", - "mod-Shift-{w,e,r} Move client to screen 1, 2, or 3", - "", - "-- Mouse bindings: default actions bound to mouse events", - "mod-button1 Set the window to floating mode and move by dragging", - "mod-button2 Raise the window to the top of the stack", - "mod-button3 Set the window to floating mode and resize by dragging"] diff --git a/scripts/arch/create-gpg-key.sh b/scripts/arch/create-gpg-key.sh deleted file mode 100755 index 1bd4a71..0000000 --- a/scripts/arch/create-gpg-key.sh +++ /dev/null @@ -1,7 +0,0 @@ -# install gpg -sudo pacman -S gpg --noconfirm - -# generate key -tput setaf 2; echo "Please enter 1, then 4096!"; tput sgr0; -gpg --full-generate-key - diff --git a/scripts/arch/install-packages.sh b/scripts/arch/install-packages.sh deleted file mode 100755 index 70035c5..0000000 --- a/scripts/arch/install-packages.sh +++ /dev/null @@ -1,11 +0,0 @@ -#!/usr/bin/bash - -# python packages -sudo pacman -S python3 pypy3 --noconfirm - -# js and ts packages -sudo pacman -S deno nodejs npm --noconfirm - -# tex & markdown packages -sudo pacman -S texlive-core pandoc --noconfirm - diff --git a/scripts/deb/alacritty-setup.sh b/scripts/deb/alacritty-setup.sh deleted file mode 100755 index 7e1b0ac..0000000 --- a/scripts/deb/alacritty-setup.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/sh - -# install dependencies -sudo apt install -y git cmake pkg-config libfreetype6-dev libfontconfig1-dev libxcb-xfixes0-dev python3 -sudo snap install rustup - -# install alacritty -cd ~/Downloads -git clone https://github.com/alacritty/alacritty.git -cd alacritty -rustup override set stable -rustup update stable - -cargo build --release - -# POST SETUP -# terminfo -sudo tic -xe alacritty,alacritty-direct extra/alacritty.info - -# desktop entry -sudo cp target/release/alacritty /usr/local/bin -sudo cp extra/logo/alacritty-term.svg /usr/share/pixmaps/Alacritty.svg -sudo desktop-file-install extra/linux/Alacritty.desktop -sudo update-desktop-database - diff --git a/scripts/deb/git-setup.sh b/scripts/deb/git-setup.sh deleted file mode 100755 index 8902918..0000000 --- a/scripts/deb/git-setup.sh +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/sh - -# install git -sudo apt install git --assume-yes - -# setup keyring -sudo apt install libsecret-1-0 libsecret-1-dev --assume-yes -cd /usr/share/doc/git/contrib/credential/libsecret -sudo make -git config --global credential.helper /usr/share/doc/git/contrib/credential/libsecret/git-credential-libsecret - -tput setaf 2; printf "Follow these steps to setup a GPG key for your git instance:\nhttps://docs.github.com/en/free-pro-team@latest/github/authenticating-to-github/telling-git-about-your-signing-key\n" - diff --git a/scripts/deb/kitty.conf b/scripts/deb/kitty.conf deleted file mode 100644 index e3f36d5..0000000 --- a/scripts/deb/kitty.conf +++ /dev/null @@ -1,26 +0,0 @@ -font_size 15 -cursor_shape underline - -# afterglow theme -background #202020 -foreground #d0d0d0 -cursor #d0d0d0 -selection_background #303030 -color0 #151515 -color8 #505050 -color1 #ac4142 -color9 #ac4142 -color2 #7e8d50 -color10 #7e8d50 -color3 #e5b566 -color11 #e5b566 -color4 #6c99ba -color12 #6c99ba -color5 #9e4e85 -color13 #9e4e85 -color6 #7dd5cf -color14 #7dd5cf -color7 #d0d0d0 -color15 #f5f5f5 -selection_foreground #202020 - diff --git a/scripts/deb/terminal-setup.sh b/scripts/deb/terminal-setup.sh deleted file mode 100755 index f7531b4..0000000 --- a/scripts/deb/terminal-setup.sh +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/sh - -# install alacritty -# sh alacritty-setup.sh - -# FISH SETUP -sudo apt install -y fish curl -curl -L https://get.oh-my.fish | fish -mkdir -p $fish_complete_path[1] -cp extra/completions/alacritty.fish $fish_complete_path[1]/alacritty.fish - diff --git a/scripts/deb/vim-setup.sh b/scripts/deb/vim-setup.sh deleted file mode 100755 index 4cefad6..0000000 --- a/scripts/deb/vim-setup.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/bin/sh - -# install curl -sudo apt install curl --assume-yes - -# install vim -sudo apt install vim --assume-yes - -# install nodejs and npm for coc -sudo apt install nodejs npm --assume-yes - -# setup vim-plug -curl -fLo ~/.vim/autoload/plug.vim --create-dirs \ - https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim - -# copy vimrc -cp ../vimrc ~/.vimrc - -# source copied vimrc -vim -c source ~/.vimrc -c qa! -# install plugins -vim -c PlugInstall vimtex -c coc.nvim -c PlugInstall lightline.vim -c PlugInstall nerdtree -c qa! diff --git a/scripts/arch/git-setup.sh b/scripts/git-setup.sh similarity index 100% rename from scripts/arch/git-setup.sh rename to scripts/git-setup.sh diff --git a/scripts/setup-laptop.sh b/scripts/setup-laptop.sh new file mode 100644 index 0000000..602f8c5 --- /dev/null +++ b/scripts/setup-laptop.sh @@ -0,0 +1,18 @@ +#!/bin/sh + +# install curl +sudo pacman -S curl --noconfirm + +sh update-pacman-mirrors.sh +sh vim-setup.sh +sh git-setup.sh + +# install kitty, i3-gaps, picom, polybar and nitrogen +sudo pacman -S kitty i3-gaps picom polybar nitrogen --noconfirm + +mkdir ~/.config/kitty ~/.config/i3 ~/.config/picom ~/.config/polybar + +cp .config/kitty/kitty.conf ~/.config/kitty/kitty.conf +cp .config/i3/config-laptop ~/.config/i3/config +cp .config/picom/picom.conf ~/.config/picom/picom.conf +cp .config/polybar/config-laptop ~/.config/polybar/config diff --git a/scripts/arch/update-pacman-mirrors.sh b/scripts/update-pacman-mirrors.sh similarity index 100% rename from scripts/arch/update-pacman-mirrors.sh rename to scripts/update-pacman-mirrors.sh diff --git a/scripts/arch/vim-setup.sh b/scripts/vim-setup.sh similarity index 65% rename from scripts/arch/vim-setup.sh rename to scripts/vim-setup.sh index 872cf8a..9f2c55e 100755 --- a/scripts/arch/vim-setup.sh +++ b/scripts/vim-setup.sh @@ -1,20 +1,14 @@ #!/bin/sh -# install curl -sudo pacman -S curl --noconfirm - -# install vim -sudo pacman -S vim --noconfirm - -# install nodejs for coc -sudo pacman -S nodejs --noconfirm +# install curl, vim and nodejs +sudo pacman -S vim nodejs --noconfirm # setup vim-plug curl -fLo ~/.vim/autoload/plug.vim --create-dirs \ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim # copy vimrc -cp ../vimrc ~/.vimrc +cp ../.vimrc ~/.vimrc # source copied vimrc vim -c source ~/.vimrc -c qa! diff --git a/scripts/arch/wifi-usb-setup.sh b/scripts/wifi-usb-setup.sh similarity index 100% rename from scripts/arch/wifi-usb-setup.sh rename to scripts/wifi-usb-setup.sh