home:natto: switched to xmonad+xmobar
This commit is contained in:
24
home/config/xmonad/xmobar.hs
Normal file
24
home/config/xmonad/xmobar.hs
Normal file
@@ -0,0 +1,24 @@
|
||||
Config {
|
||||
position = Static { xpos = 0 , ypos = 0, width = 1805, height = 23 },
|
||||
font = "xft:Fira Mono:style=Regular:antialias=true:pixelsize=16"
|
||||
additionalFonts = [ "xft:Font Awesome 5 Free Solid:pixelsize=15", "xft:Font Awesome 5 Brands:pixelsize=15" ]
|
||||
bgColor = "#1d2021",
|
||||
fgColor = "#d5c4a1",
|
||||
lowerOnStart = False,
|
||||
overrideRedirect = False,
|
||||
allDesktops = True,
|
||||
persistent = True,
|
||||
commands = [
|
||||
Run MultiCpu ["-t","<fn=1>\xf2db</fn> <total>","-L","20","-H","80","-h","#D3869B","-l","#8EC07C","-n","#EBDBB2"] 10,
|
||||
Run Memory ["-t","<fn=1>\xf538</fn> <usedratio>","-H","12288","-L","6144","-h","#D3869B","-l","#8EC07C","-n","#EBDBB2"] 10,
|
||||
Run Network "wlp0s20f3" ["-t","<fn=1>\xf1eb</fn> <fc=#fabd2f><rx>/<tx></fc>"] 10,
|
||||
Run Date "<fn=1>\xf073</fn> %b, %_d ║%l:%M:%S " "date" 10,
|
||||
Run MPD ["-t", "<fn=1>\xf001</fn> <state>: <title>", "--", "-P", ">>", "-Z", "|", "-S", "><", "-h", "127.0.0.1", "-p", "6600"] 10,
|
||||
Run Com "pamixer" ["--get-volume"] "" 10,
|
||||
Run UnsafeStdinReader
|
||||
],
|
||||
sepChar = "*",
|
||||
alignSep = "--",
|
||||
template = "*UnsafeStdinReader* ║ *mpd* -- *multicpu*% ║ *memory*% ║ *wlp0s20f3* ║ <fn=1></fn> <fc=#83a598>*pamixer*%</fc> ║ <fc=#ebdbb2>*date*</fc>"
|
||||
}
|
||||
|
173
home/config/xmonad/xmonad.hs
Normal file
173
home/config/xmonad/xmonad.hs
Normal file
@@ -0,0 +1,173 @@
|
||||
import System.IO
|
||||
import System.Exit
|
||||
import XMonad
|
||||
import XMonad.Config.Desktop
|
||||
import XMonad.Layout.Fullscreen
|
||||
import XMonad.Hooks.EwmhDesktops
|
||||
import XMonad.Hooks.DynamicLog
|
||||
import XMonad.Layout.NoBorders
|
||||
import XMonad.Layout.Spacing (smartSpacing)
|
||||
import XMonad.Layout.Spiral
|
||||
import XMonad.Layout.Tabbed
|
||||
import XMonad.Layout.ThreeColumns
|
||||
import XMonad.Layout.ResizableTile
|
||||
import XMonad.Layout.ToggleLayouts (ToggleLayout(..), toggleLayouts)
|
||||
import XMonad.Hooks.ManageDocks
|
||||
import XMonad.Util.Run (spawnPipe)
|
||||
import qualified XMonad.StackSet as W
|
||||
import qualified Data.Map as M
|
||||
|
||||
myBorderWidth = 2
|
||||
myTerminal = "/usr/bin/env st"
|
||||
myFocusFollowsMouse = True
|
||||
myNormalBorderColor = "#1d2021"
|
||||
myModMask = mod4Mask
|
||||
myFocusedBorderColor = "#d5c4a1"
|
||||
myManageHook = composeAll
|
||||
[ className =? "mpv" --> doFloat
|
||||
, className =? "Discord" --> doFloat ]
|
||||
|
||||
myWorkspaces = clickable $ ["I", "II", "III", "IV", "V", "VI", "VII", "VIII", "IX" ]
|
||||
where clickable l = ["<action=`xdotool key super+" ++ show (n) ++ "`>" ++ ws ++ "</action>" | (i,ws) <- zip [1..9] l, let n = i ]
|
||||
|
||||
myKeys conf@(XConfig {XMonad.modMask = modMask}) = M.fromList $
|
||||
[ ((modMask, xK_Return),
|
||||
spawn $ XMonad.terminal conf)
|
||||
|
||||
, ((modMask, xK_d),
|
||||
spawn "/usr/bin/env dmenu_run -l 20")
|
||||
|
||||
, ((shiftMask, xK_Print),
|
||||
spawn "flameshot gui -p /home/natto/Pictures")
|
||||
|
||||
, ((0, xK_Print),
|
||||
spawn "flameshot full -p /home/natto/Pictures")
|
||||
|
||||
, ((mod1Mask, xK_Print),
|
||||
spawn "flameshot full -p /home/natto/Pictures -d 10000")
|
||||
|
||||
, ((modMask, xK_p),
|
||||
spawn "mpc toggle")
|
||||
|
||||
, ((modMask, xK_h),
|
||||
spawn "mpc next")
|
||||
|
||||
, ((modMask, xK_k),
|
||||
spawn "mpc prev")
|
||||
|
||||
, ((modMask .|. shiftMask, xK_a),
|
||||
spawn "mpc seek -00:00:05")
|
||||
|
||||
, ((modMask .|. shiftMask, xK_s),
|
||||
spawn "mpc seek +00:00:05")
|
||||
|
||||
, ((modMask .|. shiftMask, xK_period),
|
||||
spawn "pamixer --allow-boost -i 5")
|
||||
|
||||
, ((modMask .|. shiftMask, xK_comma),
|
||||
spawn "pamixer -d 5")
|
||||
|
||||
, ((modMask .|. shiftMask, xK_q),
|
||||
kill)
|
||||
|
||||
, ((modMask, xK_space),
|
||||
sendMessage NextLayout)
|
||||
|
||||
, ((modMask, xK_f),
|
||||
sendMessage (Toggle "Full"))
|
||||
|
||||
, ((modMask .|. shiftMask, xK_space),
|
||||
setLayout $ XMonad.layoutHook conf)
|
||||
|
||||
, ((modMask, xK_r),
|
||||
refresh)
|
||||
|
||||
, ((modMask, xK_n),
|
||||
windows W.focusDown)
|
||||
|
||||
, ((modMask, xK_e), windows W.focusUp )
|
||||
|
||||
, ((modMask .|. shiftMask, xK_m),
|
||||
windows W.focusMaster )
|
||||
|
||||
, ((modMask .|. shiftMask, xK_Return),
|
||||
windows W.swapMaster)
|
||||
|
||||
, ((modMask .|. shiftMask, xK_n),
|
||||
windows W.swapDown )
|
||||
|
||||
, ((modMask .|. shiftMask, xK_e),
|
||||
windows W.swapUp )
|
||||
|
||||
, ((mod1Mask, xK_m),
|
||||
sendMessage Shrink)
|
||||
|
||||
, ((mod1Mask, xK_i),
|
||||
sendMessage Expand)
|
||||
|
||||
, ((mod1Mask, xK_n),
|
||||
sendMessage MirrorShrink)
|
||||
|
||||
, ((mod1Mask, xK_e),
|
||||
sendMessage MirrorExpand)
|
||||
|
||||
, ((modMask, xK_t),
|
||||
withFocused $ windows . W.sink)
|
||||
|
||||
, ((modMask, xK_comma),
|
||||
sendMessage (IncMasterN 1))
|
||||
|
||||
, ((modMask, xK_period),
|
||||
sendMessage (IncMasterN (-1)))
|
||||
|
||||
, ((modMask .|. mod1Mask, xK_f),
|
||||
io (exitWith ExitSuccess))
|
||||
|
||||
, ((modMask .|. mod1Mask, xK_r),
|
||||
restart "xmonad" True)
|
||||
]
|
||||
++
|
||||
[((m .|. modMask, k), windows $ f i)
|
||||
| (i, k) <- zip (XMonad.workspaces conf) [xK_1 .. xK_9]
|
||||
, (f, m) <- [(W.greedyView, 0), (W.shift, shiftMask)]]
|
||||
|
||||
myLayoutHook = toggleLayouts (noBorders Full) ( smartSpacing 8 $ smartBorders $ avoidStruts (
|
||||
spiral (1/1) |||
|
||||
tabbed shrinkText tabConfig |||
|
||||
ThreeCol 1 (3/100) (1/2) |||
|
||||
Tall 1 (3/100) (1/2) |||
|
||||
Mirror (Tall 1 (3/100) (1/2)) |||
|
||||
Full))
|
||||
|
||||
tabConfig = defaultTheme {
|
||||
activeTextColor = "#1d2021",
|
||||
activeColor = "#d5c4a1",
|
||||
inactiveTextColor = "#d5c4a1",
|
||||
inactiveColor = "#1d2021"
|
||||
}
|
||||
|
||||
myXmobarrc = "~/.xmonad/lib/xmobar.hs"
|
||||
|
||||
main = do xmproc <- spawnPipe ("xmobar " ++ myXmobarrc)
|
||||
xmonad $ ewmh desktopConfig
|
||||
{ borderWidth = myBorderWidth
|
||||
, manageHook = manageDocks <+> myManageHook
|
||||
, terminal = myTerminal
|
||||
, focusFollowsMouse = myFocusFollowsMouse
|
||||
, normalBorderColor = myNormalBorderColor
|
||||
, layoutHook = myLayoutHook
|
||||
, modMask = myModMask
|
||||
, keys = myKeys
|
||||
, focusedBorderColor = myFocusedBorderColor
|
||||
, workspaces = myWorkspaces
|
||||
, logHook = dynamicLogWithPP xmobarPP
|
||||
{ ppOutput = hPutStrLn xmproc
|
||||
, ppCurrent = xmobarColor "#b8bb26" "" . wrap "[" "]"
|
||||
, ppVisible = xmobarColor "#b8bb26" ""
|
||||
, ppHidden = xmobarColor "#d3869b" ""
|
||||
, ppTitle = xmobarColor "#ebdbb2" "" . shorten 60
|
||||
, ppLayout = const ""
|
||||
, ppUrgent = xmobarColor "#fabd2f" "" . wrap "!" ""
|
||||
, ppSep = "<fc=#83a598> ║ </fc>"
|
||||
}
|
||||
}
|
@@ -72,10 +72,11 @@ in
|
||||
sxiv
|
||||
vim
|
||||
feh
|
||||
dwm
|
||||
dmenu
|
||||
st
|
||||
neofetch
|
||||
xmobar
|
||||
xdotool
|
||||
];
|
||||
|
||||
file = {
|
||||
|
@@ -10,8 +10,8 @@ in
|
||||
''
|
||||
shadow = true;
|
||||
shadow-radius = 20;
|
||||
shadow-offset-x = -20;
|
||||
shadow-offset-y = -20;
|
||||
shadow-offset-x = 30;
|
||||
shadow-offset-y = 30;
|
||||
blurExclude = [ "class_g = 'dwm'" ]
|
||||
|
||||
inactive-opacity = 0.92;
|
||||
@@ -36,7 +36,7 @@ in
|
||||
popup_menu={opacity=0.8;};
|
||||
dropdown_menu={opacity=0.8;};
|
||||
};
|
||||
shadow-exclude = ["x = 0 && y = 0 && override_redirect = true"]
|
||||
shadow-exclude = ["x = 0 && y = 0 && override_redirect = true", "class_g = 'xmobar' && argb", "class_g = 'stalonetray' && argb"]
|
||||
'';
|
||||
|
||||
};
|
||||
@@ -75,5 +75,18 @@ in
|
||||
'';
|
||||
network.startWhenNeeded = true;
|
||||
};
|
||||
stalonetray = {
|
||||
enable = true;
|
||||
config = {
|
||||
geometry = "5x1+1805";
|
||||
window_type = "dock";
|
||||
sticky = true;
|
||||
icon_size = 23;
|
||||
background = "#1d2021";
|
||||
};
|
||||
extraConfig = ''
|
||||
kludges force_icons_size
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
||||
|
@@ -1,13 +1,23 @@
|
||||
{pkgs, config, ...}:
|
||||
{
|
||||
xsession = {
|
||||
windowManager.bspwm = {
|
||||
enable = false;
|
||||
extraConfig = builtins.readFile ./config/bspwm/bspwmrc;
|
||||
};
|
||||
pointerCursor = {
|
||||
package = pkgs.numix-cursor-theme;
|
||||
name = "Numix";
|
||||
};
|
||||
windowManager = {
|
||||
bspwm = {
|
||||
enable = false;
|
||||
extraConfig = builtins.readFile ./config/bspwm/bspwmrc;
|
||||
};
|
||||
xmonad = {
|
||||
enable = true;
|
||||
enableContribAndExtras = true;
|
||||
config = ../config/xmonad/xmonad.hs;
|
||||
libFiles = {
|
||||
"xmobar.hs" = ../config/xmonad/xmobar.hs;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
Reference in New Issue
Block a user