mirror of https://github.com/E-Almqvist/dotfiles
parent
2b79218287
commit
21f0a97250
@ -1,46 +0,0 @@ |
|||||||
conky.config = { |
|
||||||
alignment = 'top_left', |
|
||||||
background = true, |
|
||||||
border_width = 1, |
|
||||||
cpu_avg_samples = 2, |
|
||||||
default_color = 'white', |
|
||||||
default_outline_color = 'red', |
|
||||||
default_shade_color = 'white', |
|
||||||
double_buffer = true, |
|
||||||
draw_borders = false, |
|
||||||
draw_graph_borders = true, |
|
||||||
draw_outline = false, |
|
||||||
draw_shades = false, |
|
||||||
extra_newline = false, |
|
||||||
font = 'Space Mono:size=14', |
|
||||||
gap_x = 40, |
|
||||||
gap_y = 40, |
|
||||||
minimum_height = 5, |
|
||||||
minimum_width = 260, |
|
||||||
net_avg_samples = 2, |
|
||||||
no_buffers = true, |
|
||||||
out_to_console = false, |
|
||||||
out_to_ncurses = false, |
|
||||||
out_to_stderr = false, |
|
||||||
out_to_x = true, |
|
||||||
own_window = true, |
|
||||||
own_window_class = 'Conky', |
|
||||||
own_window_type = 'override', |
|
||||||
own_window_title = 'Conky', |
|
||||||
own_window_transparent = true, |
|
||||||
show_graph_range = false, |
|
||||||
show_graph_scale = false, |
|
||||||
stippled_borders = 0, |
|
||||||
update_interval = 1.0, |
|
||||||
uppercase = false, |
|
||||||
use_spacer = 'none', |
|
||||||
use_xft = true, |
|
||||||
} |
|
||||||
|
|
||||||
conky.text = [[ |
|
||||||
TODO: |
|
||||||
${exec cat ~/.todo} |
|
||||||
|
|
||||||
MINER STATS: |
|
||||||
${execi 12 ~/.scripts/ethstatus.py} |
|
||||||
]] |
|
@ -1,4 +0,0 @@ |
|||||||
#!/bin/bash |
|
||||||
killall -q conky |
|
||||||
|
|
||||||
conky -q -c $HOME/.config/conky/conky.conf |
|
@ -1,36 +0,0 @@ |
|||||||
# Keyboard layout |
|
||||||
setxkbmap se & |
|
||||||
|
|
||||||
# Display settings |
|
||||||
$HOME/.screenlayout/layout.sh & |
|
||||||
|
|
||||||
# Compositor |
|
||||||
$HOME/.config/picom/launch & |
|
||||||
|
|
||||||
# Background |
|
||||||
nitrogen --restore & |
|
||||||
|
|
||||||
# Notification daemon |
|
||||||
dunst & |
|
||||||
|
|
||||||
# Anti sleep |
|
||||||
xset s off & |
|
||||||
xset -dpms & |
|
||||||
|
|
||||||
# EWW widgets etc |
|
||||||
#eww daemon |
|
||||||
#eww open bar |
|
||||||
|
|
||||||
# Polybar |
|
||||||
# $HOME/.config/polybar/launch & |
|
||||||
|
|
||||||
# EWW widgets |
|
||||||
eww daemon & |
|
||||||
eww open-many bar-1 bar-2 & # the bar |
|
||||||
|
|
||||||
# Keyring |
|
||||||
eval $(gnome-keyring-daemon --start) |
|
||||||
export SSH_AUTH_SOCK |
|
||||||
|
|
||||||
# Emacs daemon |
|
||||||
# emacs --daemon & |
|
@ -1,279 +0,0 @@ |
|||||||
-- __ ____ __ _ |
|
||||||
-- \ \/ / \/ | ___ _ __ __ _ __| | |
|
||||||
-- \ /| |\/| |/ _ \| '_ \ / _` |/ _` | |
|
||||||
-- / \| | | | (_) | | | | (_| | (_| | |
|
||||||
-- /_/\_\_| |_|\___/|_| |_|\__,_|\__,_| |
|
||||||
|
|
||||||
import Data.Monoid |
|
||||||
import System.Exit |
|
||||||
import XMonad |
|
||||||
|
|
||||||
import XMonad.Hooks.ManageDocks |
|
||||||
import XMonad.Util.SpawnOnce |
|
||||||
|
|
||||||
import qualified Data.Map as M |
|
||||||
import XMonad.Hooks.EwmhDesktops (ewmh) |
|
||||||
import XMonad.Hooks.InsertPosition |
|
||||||
import XMonad.Layout.Fullscreen (fullscreenSupport) |
|
||||||
-- import XMonad.Layout.IndependentScreens (withScreens) |
|
||||||
import XMonad.Layout.ToggleLayouts (ToggleLayout(Toggle)) |
|
||||||
import qualified XMonad.StackSet as W |
|
||||||
import XMonad.Util.Run (spawnPipe) |
|
||||||
import XMonad.Layout.NoBorders (noBorders, smartBorders) |
|
||||||
|
|
||||||
-- The preferred terminal program, which is used in a binding below and by |
|
||||||
-- certain contrib modules. |
|
||||||
-- |
|
||||||
-- myTerminal = "alacritty -e tmux" |
|
||||||
myTerminal = "alacritty" |
|
||||||
myTmux = myTerminal ++ " -e tmux" |
|
||||||
|
|
||||||
-- 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 = True |
|
||||||
|
|
||||||
-- Width of the window border in pixels. |
|
||||||
-- |
|
||||||
myBorderWidth = 1 |
|
||||||
|
|
||||||
-- 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 = map show [1 .. 9] |
|
||||||
myWorkspaces = map show [1..9] |
|
||||||
|
|
||||||
-- Border colors for unfocused and focused windows, respectively. |
|
||||||
-- |
|
||||||
myNormalBorderColor = "#282828" |
|
||||||
|
|
||||||
myFocusedBorderColor = "#484848" |
|
||||||
|
|
||||||
------------------------------------------------------------------------ |
|
||||||
-- Key bindings. Add, modify or remove key bindings here. |
|
||||||
-- |
|
||||||
myKeys conf@(XConfig {XMonad.modMask = modm}) = |
|
||||||
M.fromList $ |
|
||||||
-- launch a terminal |
|
||||||
[ ((modm, xK_Return), spawn $ XMonad.terminal conf) |
|
||||||
-- Launch a terminal with tmux |
|
||||||
, ((modm, xK_Shift_R), spawn myTmux) |
|
||||||
-- launch rofi app launcher |
|
||||||
, ((modm, xK_d), spawn "rofi -show drun") |
|
||||||
-- launch rofi ssh |
|
||||||
, ((modm, xK_s), spawn "rofi -show ssh") |
|
||||||
-- launch rofi shell |
|
||||||
, ((modm, xK_p), spawn "rofi -show run") |
|
||||||
-- pause cmus |
|
||||||
, ((modm, xK_u), spawn "playerctl play-pause") |
|
||||||
-- spawn firefox |
|
||||||
, ((modm, xK_b), spawn "firefox") |
|
||||||
-- screenshot |
|
||||||
, ((modm, xK_Print), spawn "flameshot gui") |
|
||||||
-- lockscreen |
|
||||||
, ((modm .|. shiftMask, xK_l), spawn "betterlockscreen --lock") |
|
||||||
-- close focused window |
|
||||||
, ((modm .|. shiftMask, xK_q), 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 .|. shiftMask, 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 fullscreen |
|
||||||
, ((modm .|. shiftMask, xK_f), toggleFull) |
|
||||||
-- 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), io exitSuccess) |
|
||||||
-- Restart xmonad |
|
||||||
, ( (modm .|. shiftMask, xK_x) |
|
||||||
, spawn |
|
||||||
"xmonad --recompile; xmonad --restart; notify-send \"XMonad\" \"Recompiled & restarted.\"") |
|
||||||
] ++ |
|
||||||
-- |
|
||||||
-- 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 (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. |
|
||||||
-- |
|
||||||
toggleFull = |
|
||||||
withFocused $ \wid -> do |
|
||||||
floats <- gets (W.floating . windowset) |
|
||||||
if M.member wid floats |
|
||||||
then withFocused $ windows . W.sink |
|
||||||
else withFocused $ windows . flip W.float (W.RationalRect 0 0 1 1) |
|
||||||
|
|
||||||
myLayout = smartBorders . avoidStruts $ noBorders Full ||| tiled ||| Mirror tiled |
|
||||||
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 = 29 / 50 |
|
||||||
-- 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 |
|
||||||
, insertPosition End Newer |
|
||||||
] |
|
||||||
|
|
||||||
------------------------------------------------------------------------ |
|
||||||
-- 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 = spawnOnce "$HOME/.xmonad/bin/autostart.sh" |
|
||||||
|
|
||||||
------------------------------------------------------------------------ |
|
||||||
-- Now run xmonad with all the defaults we set up. |
|
||||||
-- Run xmonad with the settings you specify. No need to modify this. |
|
||||||
-- |
|
||||||
main = xmonad $ fullscreenSupport $ docks $ ewmh 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 |
|
||||||
} |
|
Loading…
Reference in new issue