From 335f620d8ce11aef8b260ba92312901f9b2a99d4 Mon Sep 17 00:00:00 2001 From: Adam <24621027+adoyle0@users.noreply.github.com> Date: Thu, 28 Dec 2023 04:18:32 -0500 Subject: [PATCH] change everything -- go back to awesomewm --- .gitmodules | 3 + bin/doorsbg | 15 +- bin/doorsupdate | 4 + bin/maimpick | 17 ++ configs/alacritty/alacritty.toml | 7 + configs/alacritty/alacritty.yml | 5 - configs/awesome/awesome-wm-widgets | 1 + configs/awesome/binds/awesome.lua | 42 ++++ configs/awesome/binds/client.lua | 223 ++++++++++++++++++++ configs/awesome/binds/init.lua | 12 ++ configs/awesome/binds/launcher.lua | 140 ++++++++++++ configs/awesome/binds/layout.lua | 41 ++++ configs/awesome/binds/media.lua | 94 +++++++++ configs/awesome/binds/mouse.lua | 51 +++++ configs/awesome/binds/screen.lua | 23 ++ configs/awesome/binds/tag.lua | 78 +++++++ configs/awesome/core/init.lua | 47 +++++ configs/awesome/rc.lua | 40 ++++ configs/awesome/rules/init.lua | 57 +++++ configs/awesome/signals/init.lua | 95 +++++++++ configs/awesome/theme.lua | 70 ++++++ configs/awesome/wibar/init.lua | 116 ++++++++++ configs/awesome/wibar/taglist.lua | 44 ++++ configs/awesome/wibar/tasklist.lua | 37 ++++ configs/awesome/wibar/widgets.lua | 28 +++ configs/i3bar-river/config.toml | 54 ----- configs/i3status-rust/config.toml | 50 ----- configs/kitty/kitty.conf | 4 - configs/mako/config | 2 - configs/mako/update-theme | 20 -- configs/river/init | 189 ----------------- configs/shell/profile | 12 -- configs/spotify-launcher.conf | 2 - configs/wal/templates/colors-alacritty.toml | 27 +++ configs/wal/templates/colors-alacritty.yml | 25 --- configs/x11/xinitrc | 24 +++ configs/x11/xprofile | 16 ++ 37 files changed, 1345 insertions(+), 370 deletions(-) create mode 100644 .gitmodules create mode 100755 bin/maimpick create mode 100644 configs/alacritty/alacritty.toml delete mode 100644 configs/alacritty/alacritty.yml create mode 160000 configs/awesome/awesome-wm-widgets create mode 100644 configs/awesome/binds/awesome.lua create mode 100644 configs/awesome/binds/client.lua create mode 100644 configs/awesome/binds/init.lua create mode 100644 configs/awesome/binds/launcher.lua create mode 100644 configs/awesome/binds/layout.lua create mode 100644 configs/awesome/binds/media.lua create mode 100644 configs/awesome/binds/mouse.lua create mode 100644 configs/awesome/binds/screen.lua create mode 100644 configs/awesome/binds/tag.lua create mode 100644 configs/awesome/core/init.lua create mode 100644 configs/awesome/rc.lua create mode 100644 configs/awesome/rules/init.lua create mode 100644 configs/awesome/signals/init.lua create mode 100644 configs/awesome/theme.lua create mode 100644 configs/awesome/wibar/init.lua create mode 100644 configs/awesome/wibar/taglist.lua create mode 100644 configs/awesome/wibar/tasklist.lua create mode 100644 configs/awesome/wibar/widgets.lua delete mode 100644 configs/i3bar-river/config.toml delete mode 100644 configs/i3status-rust/config.toml delete mode 100644 configs/kitty/kitty.conf delete mode 100644 configs/mako/config delete mode 100755 configs/mako/update-theme delete mode 100755 configs/river/init delete mode 100644 configs/spotify-launcher.conf create mode 100644 configs/wal/templates/colors-alacritty.toml delete mode 100644 configs/wal/templates/colors-alacritty.yml create mode 100755 configs/x11/xinitrc create mode 100755 configs/x11/xprofile diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..c384deb --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "configs/awesome/awesome-wm-widgets"] + path = configs/awesome/awesome-wm-widgets + url = https://github.com/streetturtle/awesome-wm-widgets diff --git a/bin/doorsbg b/bin/doorsbg index 20378d4..9217846 100755 --- a/bin/doorsbg +++ b/bin/doorsbg @@ -1,15 +1,16 @@ #! /bin/bash -# pick a random wallpaper and save a copy -wal -i ~/Pictures/Wallpapers && +# This is meant to be run by awesome with the set colors keybind, +# not by itself though it should work regardless + +set -e + +# Pick a random wallpaper and save a copy +wal -i ~/Pictures/Wallpapers cp $(awk {print} ~/.cache/wal/wal) ~/.cache/wal/bg -# update themes for other stuff it it exists +# Update themes for other stuff it it exists [[ -x "$(command -v pywalfox)" ]] && pywalfox update [[ -x "$(command -v pywal-discord)" ]] && pywal-discord [[ -x "$(command -v beautifuldiscord)" ]] && beautifuldiscord --css ~/.config/BetterDiscord/themes [[ -x "$(command -v wal-telegram )" ]] && wal-telegram -g - -# set wallpaper and reset waybar -swaybg -i ~/.cache/wal/bg & -killall waybar && waybar & diff --git a/bin/doorsupdate b/bin/doorsupdate index 9128861..5d8d19a 100755 --- a/bin/doorsupdate +++ b/bin/doorsupdate @@ -1,3 +1,7 @@ #!/bin/bash +# Simple update doors + +set -e + cd $HOME/.doors && git pull && ./setup diff --git a/bin/maimpick b/bin/maimpick new file mode 100755 index 0000000..886233c --- /dev/null +++ b/bin/maimpick @@ -0,0 +1,17 @@ +#!/bin/sh + +# Thank you Luke Smith +# https://lukesmith.xyz + +# This is bound to Shift+PrintScreen by default, requires maim. It lets you +# choose the kind of screenshot to take, including copying the image or even +# highlighting an area to copy. scrotcucks on suicidewatch right now. + +case "$(printf "a selected area\\ncurrent window\\nfull screen\\na selected area (copy)\\ncurrent window (copy)\\nfull screen (copy)" | dmenu -l 6 -i -p "Screenshot which area?")" in + "a selected area") maim -s pic-selected-"$(date '+%y%m%d-%H%M-%S').png" ;; + "current window") maim -i "$(xdotool getactivewindow)" pic-window-"$(date '+%y%m%d-%H%M-%S').png" ;; + "full screen") maim pic-full-"$(date '+%y%m%d-%H%M-%S').png" ;; + "a selected area (copy)") maim -s | xclip -selection clipboard -t image/png ;; + "current window (copy)") maim -i "$(xdotool getactivewindow)" | xclip -selection clipboard -t image/png ;; + "full screen (copy)") maim | xclip -selection clipboard -t image/png ;; +esac diff --git a/configs/alacritty/alacritty.toml b/configs/alacritty/alacritty.toml new file mode 100644 index 0000000..3ed3730 --- /dev/null +++ b/configs/alacritty/alacritty.toml @@ -0,0 +1,7 @@ +import = ["/home/adam/.cache/wal/colors-alacritty.toml"] + +[font] +size = 12 + +[window] +opacity = 0.8 diff --git a/configs/alacritty/alacritty.yml b/configs/alacritty/alacritty.yml deleted file mode 100644 index c7d278b..0000000 --- a/configs/alacritty/alacritty.yml +++ /dev/null @@ -1,5 +0,0 @@ -import: - - ~/.cache/wal/colors-alacritty.yml - -window: - opacity: 0.8 diff --git a/configs/awesome/awesome-wm-widgets b/configs/awesome/awesome-wm-widgets new file mode 160000 index 0000000..fd9c626 --- /dev/null +++ b/configs/awesome/awesome-wm-widgets @@ -0,0 +1 @@ +Subproject commit fd9c62608ff253c44ae3c664f0eab683a569e909 diff --git a/configs/awesome/binds/awesome.lua b/configs/awesome/binds/awesome.lua new file mode 100644 index 0000000..a530aea --- /dev/null +++ b/configs/awesome/binds/awesome.lua @@ -0,0 +1,42 @@ +-- Binds that affect awesome + +globalkeys = Gears.table.join( + globalkeys, + + Awful.key( + { Modkey, "Shift" }, "e", awesome.quit, + { + description = "quit awesome", + group = "awesome" + } + ), + + Awful.key( + { Modkey, }, "BackSpace", + awesome.restart, + { + description = "reload awesome", + group = "awesome" + } + ), + + Awful.key( + { Modkey, }, "F1", + Hotkeys_popup.show_help, + { + description = "show help", + group = "awesome" + } + ), + + Awful.key( + {}, "Print", + function() + os.execute("maimpick") + end, + { + description = "run screenshot script", + group = "awesome" + } + ) +) diff --git a/configs/awesome/binds/client.lua b/configs/awesome/binds/client.lua new file mode 100644 index 0000000..822a63a --- /dev/null +++ b/configs/awesome/binds/client.lua @@ -0,0 +1,223 @@ +-- Binds that affect the current window + +-- Increment variable used by move and resize +inc = 50 + +clientkeys = Gears.table.join( + clientkeys, + + Awful.key( + { Modkey, }, "f", + function(c) + c.fullscreen = not c.fullscreen + c:raise() + end, + { + description = "toggle fullscreen", + group = "client" + } + ), + + Awful.key( + { Modkey, "Mod1" }, "h", + function(c) + c:relative_move(-inc, 0, 0, 0) + end, + { + description = "move floating left", + group = "client" + } + ), + + Awful.key( + { Modkey, "Mod1", "Shift" }, "h", + function(c) + c:relative_move(-inc, 0, inc, 0) + end, + { + description = "resize floating horizontal +", + group = "client" + } + ), + + Awful.key( + { Modkey, }, "j", + function() + Awful.client.focus.byidx(1) + end, + { + description = "focus next by index", + group = "client" + } + ), + + Awful.key( + { Modkey, "Mod1" }, "j", + function(c) + c:relative_move(0, inc, 0, 0) + end, + { + description = "move floating down", + group = "client" + } + ), + + Awful.key( + { Modkey, "Shift" }, "j", + function() + Awful.client.swap.byidx(1) + end, + { + description = "swap next by index", + group = "client" + } + ), + + Awful.key( + { Modkey, "Mod1", "Shift" }, "j", + function(c) + c:relative_move(0, inc, 0, -inc) + end, + { + description = "resize floating vertical -", + group = "client" + } + ), + + Awful.key( + { Modkey, }, "k", + function() + Awful.client.focus.byidx(-1) + end, + { + description = "focus previous by index", + group = "client" + } + ), + + Awful.key( + { Modkey, "Mod1" }, "k", + function(c) + c:relative_move(0, -inc, 0, 0) + end, + { + description = "move floating up", + group = "client" + } + ), + + Awful.key( + { Modkey, "Shift" }, "k", + function() + Awful.client.swap.byidx(-1) + end, + { + description = "swap previous by index", + group = "client" + } + ), + + Awful.key( + { Modkey, "Mod1", "Shift" }, "k", + function(c) + c:relative_move(0, -inc, 0, inc) + end, + { + description = "resize floating vertical +", + group = "client" + } + ), + + Awful.key( + { Modkey, "Mod1" }, "l", + function(c) + c:relative_move(inc, 0, 0, 0) + end, + { + description = "move floating right", + group = "client" + } + ), + + Awful.key( + { Modkey, "Mod1", "Shift" }, "l", + function(c) + c:relative_move(inc, 0, -inc, 0) + end, + { + description = "resize floating horizontal -", + group = "client" + } + ), + + Awful.key( + { Modkey, "Shift" }, "n", + function(c) + c.maximized = not c.maximized + c:raise() + end, + { + description = "(un)maximize", + group = "client" + } + ), + + Awful.key( + { Modkey, }, "o", + function(c) c:move_to_screen() end, + { + description = "move focused to next screen", + group = "client" + } + ), + + Awful.key( + { Modkey, }, "q", + function(c) c:kill() end, + { + description = "close", + group = "client" + } + ), + + Awful.key( + { Modkey, }, "t", + function(c) c.ontop = not c.ontop end, + { + description = "toggle keep on top", + group = "client" + } + ), + + Awful.key( + { Modkey, "Shift" }, "Return", + function(c) + c:swap(Awful.client.getmaster()) + end, + { + description = "move focused to master", + group = "client" + } + ), + + Awful.key( + { Modkey, }, "space", + Awful.client.floating.toggle, + { + description = "toggle floating", + group = "client" + } + ), + + Awful.key( + { Modkey, }, "Tab", + function() + Awful.client.focus.history.previous() + if client.focus then client.focus:raise() end + end, + { + description = "focus previous", + group = "client" + } + ) +) diff --git a/configs/awesome/binds/init.lua b/configs/awesome/binds/init.lua new file mode 100644 index 0000000..4de1f38 --- /dev/null +++ b/configs/awesome/binds/init.lua @@ -0,0 +1,12 @@ +-- Group by appearance in help menu (Modkey + F1) +require('binds.awesome') +require('binds.client') +require('binds.launcher') +require('binds.layout') +require('binds.media') +require('binds.mouse') +require('binds.screen') +require('binds.tag') + +-- Apply all above +root.keys(globalkeys) diff --git a/configs/awesome/binds/launcher.lua b/configs/awesome/binds/launcher.lua new file mode 100644 index 0000000..9af54c1 --- /dev/null +++ b/configs/awesome/binds/launcher.lua @@ -0,0 +1,140 @@ +-- Binds that launch programs + +globalkeys = Gears.table.join( + globalkeys, + + Awful.key( + { Modkey, }, "c", + function() Awful.spawn("caprine") end, + { + description = "open caprine", + group = "launcher" + } + ), + + Awful.key( + { Modkey, "Shift" }, "c", + function() Awful.spawn("telegram-desktop") end, + { + description = "open telegram-desktop", + group = "launcher" + } + ), + + Awful.key( + { Modkey, }, "d", + function() Awful.spawn("discord") end, + { + description = "open discord", + group = "launcher" + } + ), + + Awful.key( + { Modkey, }, "e", + function() Awful.spawn(Email) end, + { + description = "open editor", + group = "launcher" + } + ), + + Awful.key( + { Modkey, "Shift" }, "e", + function() Awful.spawn("thunderbird") end, + { + description = "open thunderbird", + group = "launcher" + } + ), + + Awful.key( + { Modkey, }, "g", + function() Awful.spawn("steam-native") end, + { + description = "open steam", + group = "launcher" + } + ), + + Awful.key( + { Modkey, "Shift" }, "g", + function() Awful.spawn("lutris") end, + { + description = "open lutris", + group = "launcher" + } + ), + + Awful.key( + { Modkey, }, "i", + function() Awful.spawn("gimp") end, + { + description = "open gimp", + group = "launcher" + } + ), + + Awful.key( + { Modkey, }, "m", + function() Awful.spawn(Music) end, + { + description = "open spotify", + group = "launcher" + } + ), + + Awful.key( + { Modkey, "Shift" }, "p", + function() Awful.spawn("doorsbg") end, + awesome.restart, + { + description = "set new random wallpaper/color scheme", + group = "launcher" + } + ), + + Awful.key( + { Modkey, }, "r", + function() Awful.screen.focused().mypromptbox:run() end, + { + description = "run prompt", + group = "launcher" + } + ), + + Awful.key({ Modkey, }, "v", + function() Awful.spawn("virt-manager") end, + { + description = "open virt-manager", + group = "launcher" + } + ), + + Awful.key( + { Modkey, }, "w", + function() Awful.spawn(Browser) end, + { + description = "open browser", + group = "launcher" + } + ), + + Awful.key( + { Modkey, "Shift" }, "w", + function() Awful.spawn(Browser2) end, + { + description = "open browser2", + group = "launcher" + } + ), + + Awful.key( + { Modkey, }, "Return", + function() Awful.spawn(Terminal) end, + { + description = "open a terminal", + group = "launcher" + } + ) +) diff --git a/configs/awesome/binds/layout.lua b/configs/awesome/binds/layout.lua new file mode 100644 index 0000000..8c566da --- /dev/null +++ b/configs/awesome/binds/layout.lua @@ -0,0 +1,41 @@ +-- Binds that affect layout + +globalkeys = Gears.table.join( + globalkeys, + + Awful.key( + { Modkey, "Shift" }, "h", + function() Awful.tag.incmwfact(-0.05) end, + { + description = "resize split -", + group = "layout" + } + ), + + Awful.key( + { Modkey, "Shift" }, "l", + function() Awful.tag.incmwfact(0.05) end, + { + description = "resize split +", + group = "layout" + } + ), + + Awful.key( + { Modkey, }, "[", + function() Awful.layout.inc(1) end, + { + description = "select next", + group = "layout" + } + ), + + Awful.key( + { Modkey, }, "]", + function() Awful.layout.inc(-1) end, + { + description = "select previous", + group = "layout" + } + ) +) diff --git a/configs/awesome/binds/media.lua b/configs/awesome/binds/media.lua new file mode 100644 index 0000000..21a83bd --- /dev/null +++ b/configs/awesome/binds/media.lua @@ -0,0 +1,94 @@ +-- Binds related to media + +globalkeys = Gears.table.join( + globalkeys, + + -- Media + Awful.key( + {}, "XF86AudioLowerVolume", + function() + os.execute("pamixer -d 3") + end, + { + description = "lower volume", + group = "media" + } + ), + + Awful.key( + {}, "XF86AudioMicMute", + function() + os.execute("pactl set-source-mute @DEFAULT_SOURCE@ toggle") + end, + { + description = "mute mic", + group = "media" + } + ), + + Awful.key( + {}, "XF86AudioMute", + function() + os.execute("pamixer -t") + end, + { + description = "mute audio", + group = "media" + } + ), + + Awful.key( + {}, "XF86AudioNext", + function() + os.execute("playerctl next") + end, + { + description = "next", + group = "media" + } + ), + + Awful.key( + {}, "XF86AudioPlay", + function() + os.execute("playerctl play-pause") + end, + { + description = "play/pause", + group = "media" + } + ), + + Awful.key( + {}, "XF86AudioPrev", + function() + os.execute("playerctl previous") + end, + { + description = "previous", + group = "media" + } + ), + + Awful.key( + {}, "XF86AudioRaiseVolume", + function() + os.execute("pamixer -i 3") + end, + { + description = "raise volume", + group = "media" + } + ), + + Awful.key( + {}, "XF86AudioStop", + function() + os.execute("playerctl stop") + end, + { + description = "stop", + group = "media" + } + ) +) diff --git a/configs/awesome/binds/mouse.lua b/configs/awesome/binds/mouse.lua new file mode 100644 index 0000000..9d9df27 --- /dev/null +++ b/configs/awesome/binds/mouse.lua @@ -0,0 +1,51 @@ +-- Binds related to the mouse + +root.buttons( + Gears.table.join( + Awful.button( + {}, 4, + Awful.tag.viewnext + ), + Awful.button( + {}, 5, + Awful.tag.viewprev + ) + ) +) + +clientbuttons = Gears.table.join( + Awful.button( + {}, 1, + function(c) + c:emit_signal( + "request::activate", + "mouse_click", + { raise = true } + ) + end + ), + + Awful.button( + { Modkey }, 1, + function(c) + c:emit_signal( + "request::activate", + "mouse_click", + { raise = true } + ) + Awful.mouse.client.move(c) + end + ), + + Awful.button( + { Modkey }, 3, + function(c) + c:emit_signal( + "request::activate", + "mouse_click", + { raise = true } + ) + Awful.mouse.client.resize(c) + end + ) +) diff --git a/configs/awesome/binds/screen.lua b/configs/awesome/binds/screen.lua new file mode 100644 index 0000000..f15ed28 --- /dev/null +++ b/configs/awesome/binds/screen.lua @@ -0,0 +1,23 @@ +-- Binds related to screens + +globalkeys = Gears.table.join( + globalkeys, + + Awful.key( + { Modkey, }, "h", + function() Awful.screen.focus_relative(-1) end, + { + description = "focus previous screen", + group = "screen" + } + ), + + Awful.key( + { Modkey, }, "l", + function() Awful.screen.focus_relative(1) end, + { + description = "focus next screen", + group = "screen" + } + ) +) diff --git a/configs/awesome/binds/tag.lua b/configs/awesome/binds/tag.lua new file mode 100644 index 0000000..d7ab7b9 --- /dev/null +++ b/configs/awesome/binds/tag.lua @@ -0,0 +1,78 @@ +-- Binds related to tags + +-- Be careful: we use keycodes to make it work on any keyboard layout. +-- This should map on the top row of your keyboard, usually 1 to 9. +for i = 1, 9 do + globalkeys = Gears.table.join( + globalkeys, + + -- View tag only. + Awful.key( + { Modkey }, "#" .. i + 9, + function() + local screen = Awful.screen.focused() + local tag = screen.tags[i] + if tag then + tag:view_only() + end + end, + + { + description = "view tag #" .. i, + group = "tag" + } + ), + + -- Toggle tag display. + Awful.key( + { Modkey, "Control" }, "#" .. i + 9, + function() + local screen = Awful.screen.focused() + local tag = screen.tags[i] + if tag then + Awful.tag.viewtoggle(tag) + end + end, + + { + description = "toggle tag #" .. i, + group = "tag" + } + ), + + -- Move client to tag. + Awful.key( + { Modkey, "Shift" }, "#" .. i + 9, + function() + if client.focus then + local tag = client.focus.screen.tags[i] + if tag then + client.focus:move_to_tag(tag) + end + end + end, + { + description = "move focused client to tag #" .. i, + group = "tag" + } + ), + + -- Toggle tag on focused client. + Awful.key( + { Modkey, "Control", "Shift" }, "#" .. i + 9, + function() + if client.focus then + local tag = client.focus.screen.tags[i] + if tag then + client.focus:toggle_tag(tag) + end + end + end, + + { + description = "toggle focused client on tag #" .. i, + group = "tag" + } + ) + ) +end diff --git a/configs/awesome/core/init.lua b/configs/awesome/core/init.lua new file mode 100644 index 0000000..4214f6a --- /dev/null +++ b/configs/awesome/core/init.lua @@ -0,0 +1,47 @@ +-- Handle startup errors +if awesome.startup_errors then + Naughty.notify( + { + preset = naughty.config.presets.critical, + title = "Oops, there were errors during startup!", + text = awesome.startup_errors + } + ) +end + +-- Handle runtime errors after startup +do + local in_error = false + + awesome.connect_signal( + "debug::error", + function(err) + -- Make sure we don't go into an endless error loop + if in_error then + return + end + + in_error = true + + Naughty.notify( + { + preset = naughty.config.presets.critical, + title = "Oops, an error happened!", + text = tostring(err) + } + ) + in_error = false + end + ) +end + +require("awful.autofocus") +require("awful.hotkeys_popup.keys") + +Awful = require("awful") +Beautiful = require("beautiful") +Gears = require("gears") +Hotkeys_popup = require("awful.hotkeys_popup") +Menubar = require("menubar") +Naughty = require("naughty") +Wibox = require("wibox") diff --git a/configs/awesome/rc.lua b/configs/awesome/rc.lua new file mode 100644 index 0000000..5a9d06a --- /dev/null +++ b/configs/awesome/rc.lua @@ -0,0 +1,40 @@ +require('core') + +-- Set up key remaps +os.execute('setxkbmap -option "caps:escape,altwin:menu_win,altwin:meta_win"') + +-- Some defaults +Browser = "firefox-developer-edition" +Browser2 = "chromium" +Editor = "nvim" +Email = "thunderbird" +Modkey = "Mod4" +Music = "spotify-launcher" +Terminal = "alacritty" +Beautiful.init(".config/awesome/theme.lua") + +-- Define layouts +Awful.layout.layouts = { + Awful.layout.suit.tile.right, + Awful.layout.suit.tile.bottom, + Awful.layout.suit.tile.left, + Awful.layout.suit.tile.top, +} + +-- Set the terminal for applications that require it +Menubar.utils.terminal = Terminal + +-- Split up the rest for readability +require('binds') -- keyboard/mouse +require('rules') -- client specific rules +require('signals') -- client signals +require('wibar') -- bar/screen/wallpaper stuff + +-- Collect garbage to prevent memory leaks from widgets +Gears.timer.start_new( + 10, + function() + collectgarbage("step", 20000) + return true + end +) diff --git a/configs/awesome/rules/init.lua b/configs/awesome/rules/init.lua new file mode 100644 index 0000000..e6ea8d2 --- /dev/null +++ b/configs/awesome/rules/init.lua @@ -0,0 +1,57 @@ +Awful.rules.rules = { + -- All clients will match this rule. + { + rule = {}, + properties = { + border_width = Beautiful.border_width, + border_color = Beautiful.border_normal, + focus = Awful.client.focus.filter, + raise = true, + keys = clientkeys, + buttons = clientbuttons, + screen = Awful.screen.preferred, + placement = Awful.placement.no_overlap + Awful.placement.no_offscreen + } + }, + + -- Floating clients. + { + rule_any = { + instance = { + "DTA", -- Firefox addon DownThemAll. + "copyq", -- Includes session name in class. + "pinentry", + }, + class = { + "Arandr", + "Blueman-manager", + "Gpick", + "Kruler", + "MessageWin", -- kalarm. + "Sxiv", + "Tor Browser", -- Needs a fixed window size to avoid fingerprinting by screen size. + "Wpa_gui", + "veromix", + "xtightvncviewer" }, + + -- Note that the name property shown in xprop might be set slightly after creation of the client + -- and the name shown there might not match defined rules here. + name = { + "Event Tester", -- xev. + }, + role = { + "AlarmWindow", -- Thunderbird's calendar. + "ConfigManager", -- Thunderbird's about:config. + "pop-up", -- e.g. Google Chrome's (detached) Developer Tools. + } + }, + properties = { floating = true } + }, + + -- Add titlebars to normal clients and dialogs + { + rule_any = { type = { "normal", "dialog" } + }, + properties = { titlebars_enabled = false } + }, +} diff --git a/configs/awesome/signals/init.lua b/configs/awesome/signals/init.lua new file mode 100644 index 0000000..4740303 --- /dev/null +++ b/configs/awesome/signals/init.lua @@ -0,0 +1,95 @@ +client.connect_signal( + "manage", + function(c) + -- Set the windows at the slave, + -- i.e. put it at the end of others instead of setting it master. + -- if not awesome.startup then awful.client.setslave(c) end + + if awesome.startup + and not c.size_hints.user_position + and not c.size_hints.program_position then + -- Prevent clients from being unreachable after screen count changes. + Awful.placement.no_offscreen(c) + end + end +) + +-- Add a titlebar if titlebars_enabled is set to true in the rules. +client.connect_signal( + "request::titlebars", + function(c) + -- buttons for the titlebar + local buttons = Gears.table.join( + Awful.button( + {}, 1, + function() + c:emit_signal( + "request::activate", "titlebar", + { raise = true } + ) + Awful.mouse.client.move(c) + end + ), + Awful.button( + {}, 3, + function() + c:emit_signal( + "request::activate", "titlebar", + { raise = true } + ) + Awful.mouse.client.resize(c) + end + ) + ) + + Awful.titlebar(c):setup { + { -- Left + Awful.titlebar.widget.iconwidget(c), + buttons = buttons, + layout = Wibox.layout.fixed.horizontal + }, + { -- Middle + { -- Title + align = "center", + widget = Awful.titlebar.widget.titlewidget(c) + }, + buttons = buttons, + layout = Wibox.layout.flex.horizontal + }, + { -- Right + Awful.titlebar.widget.floatingbutton(c), + Awful.titlebar.widget.maximizedbutton(c), + Awful.titlebar.widget.stickybutton(c), + Awful.titlebar.widget.ontopbutton(c), + Awful.titlebar.widget.closebutton(c), + layout = Wibox.layout.fixed.horizontal() + }, + layout = Wibox.layout.align.horizontal + } + end +) + +-- Enable sloppy focus, so that focus follows mouse. +-- client.connect_signal( +-- "mouse::enter", +-- function(c) +-- c:emit_signal( +-- "request::activate", "mouse_enter", +-- { raise = false } +-- ) +-- end +-- ) + +client.connect_signal( + "focus", + function(c) + c.border_color = Beautiful.border_focus + end +) + +client.connect_signal( + "unfocus", + function(c) + c.border_color = Beautiful.border_normal + end +) diff --git a/configs/awesome/theme.lua b/configs/awesome/theme.lua new file mode 100644 index 0000000..ed4be97 --- /dev/null +++ b/configs/awesome/theme.lua @@ -0,0 +1,70 @@ +local xresources = require("beautiful.xresources") + +local dpi = xresources.apply_dpi +local gfs = require("gears.filesystem") +local theme = {} +local theme_assets = require("beautiful.theme_assets") +local themes_path = gfs.get_themes_dir() +local xrdb = xresources.get_current_theme() + +theme.font = "monospace 11" +theme.wallpaper = '.cache/wal/bg' +theme.useless_gap = dpi(8) +theme.border_width = dpi(1) +theme.menu_height = dpi(15) +theme.menu_width = dpi(100) + +-- Colors +theme.bg_focus = xrdb.color4 +theme.bg_minimize = xrdb.color4 +theme.bg_normal = xrdb.background +theme.bg_systray = theme.bg_normal +theme.bg_urgent = xrdb.color1 + +theme.border_focus = xrdb.color4 +theme.border_marked = xrdb.color10 +theme.border_normal = xrdb.color5 + +theme.fg_focus = xrdb.foreground +theme.fg_minimize = xrdb.foreground +theme.fg_normal = xrdb.foreground +theme.fg_urgent = xrdb.foreground + +-- Generate taglist squares: +local taglist_square_size = dpi(4) + +theme.taglist_squares_sel = theme_assets.taglist_squares_sel( + taglist_square_size, + theme.fg_normal +) + +theme.taglist_squares_unsel = theme_assets.taglist_squares_unsel( + taglist_square_size, + theme.fg_normal +) + +-- You can use your own layout icons like this: +theme.layout_cornerne = themes_path .. "default/layouts/cornernew.png" +theme.layout_cornernw = themes_path .. "default/layouts/cornernww.png" +theme.layout_cornerse = themes_path .. "default/layouts/cornersew.png" +theme.layout_cornersw = themes_path .. "default/layouts/cornersww.png" +theme.layout_dwindle = themes_path .. "default/layouts/dwindlew.png" +theme.layout_fairh = themes_path .. "default/layouts/fairhw.png" +theme.layout_fairv = themes_path .. "default/layouts/fairvw.png" +theme.layout_floating = themes_path .. "default/layouts/floatingw.png" +theme.layout_fullscreen = themes_path .. "default/layouts/fullscreenw.png" +theme.layout_magnifier = themes_path .. "default/layouts/magnifierw.png" +theme.layout_max = themes_path .. "default/layouts/maxw.png" +theme.layout_spiral = themes_path .. "default/layouts/spiralw.png" +theme.layout_tile = themes_path .. "default/layouts/tilew.png" +theme.layout_tilebottom = themes_path .. "default/layouts/tilebottomw.png" +theme.layout_tileleft = themes_path .. "default/layouts/tileleftw.png" +theme.layout_tiletop = themes_path .. "default/layouts/tiletopw.png" + +-- Define the icon theme for application icons. If not set then the icons +-- from /usr/share/icons and /usr/share/icons/hicolor will be used. +theme.icon_theme = nil + +return theme + +-- vim: filetype=lua:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:textwidth=80 diff --git a/configs/awesome/wibar/init.lua b/configs/awesome/wibar/init.lua new file mode 100644 index 0000000..36e051e --- /dev/null +++ b/configs/awesome/wibar/init.lua @@ -0,0 +1,116 @@ +require('wibar.widgets') +require('wibar.taglist') +require('wibar.tasklist') + +local function set_wallpaper(s) + -- Wallpaper + if Beautiful.wallpaper then + local wallpaper = Beautiful.wallpaper + -- If wallpaper is a function, call it with the screen + if type(wallpaper) == "function" then + wallpaper = wallpaper(s) + end + Gears.wallpaper.maximized(wallpaper, s, true) + end +end + +-- Re-set wallpaper when a screen's geometry changes (e.g. different resolution) +screen.connect_signal( + "property::geometry", + set_wallpaper +) + +Awful.screen.connect_for_each_screen( + function(s) + -- Each screen has its own tag table. + Awful.tag( + { "1", "2", "3", "4", "5", "6", "7", "8", "9" }, + s, + Awful.layout.layouts[1] + ) + + -- Create a promptbox for each screen + s.mypromptbox = Awful.widget.prompt() + + -- Create an imagebox widget which will contain an icon indicating which layout we're using. + -- We need one layoutbox per screen. + s.mylayoutbox = Awful.widget.layoutbox(s) + + s.mylayoutbox:buttons( + Gears.table.join( + Awful.button( + {}, 3, + function() + Awful.layout.inc(-1) + end + ), + + Awful.button( + {}, 4, + function() + Awful.layout.inc(1) + end + ), + + Awful.button( + {}, 5, + function() + Awful.layout.inc(-1) + end + ) + ) + ) + + -- Create a taglist widget + s.mytaglist = Awful.widget.taglist { + screen = s, + filter = Awful.widget.taglist.filter.all, + buttons = Taglist_buttons + } + + -- Create a tasklist widget + s.mytasklist = Awful.widget.tasklist { + screen = s, + filter = Awful.widget.tasklist.filter.currenttags, + buttons = Tasklist_buttons + } + + -- Create the Wibox + s.myWibox = Awful.wibar( + { + position = "top", + screen = s + } + ) + + -- Add widgets to the Wibox + s.myWibox:setup { + layout = Wibox.layout.align.horizontal, + + -- Left + { + layout = Wibox.layout.fixed.horizontal, + s.mytaglist, + s.mypromptbox, + }, + + -- Middle + s.mytasklist, + + -- Right + { + layout = Wibox.layout.fixed.horizontal, + Cpu_widget(), + Ram_widget(), + Batteryarc_widget( + { enable_battery_warning = false } + ), + Wibox.widget.systray(), + Mytextclock, + s.mylayoutbox, + }, + } + end +) + +os.execute('nitrogen --set-zoom-fill $(awk {print} ~/.cache/wal/wal)') diff --git a/configs/awesome/wibar/taglist.lua b/configs/awesome/wibar/taglist.lua new file mode 100644 index 0000000..e7d93aa --- /dev/null +++ b/configs/awesome/wibar/taglist.lua @@ -0,0 +1,44 @@ +Taglist_buttons = Gears.table.join( + Awful.button( + {}, 1, + function(t) + t:view_only() + end + ), + + Awful.button( + { Modkey }, 1, + function(t) + if client.focus then + client.focus:move_to_tag(t) + end + end + ), + + Awful.button( + {}, 3, + Awful.tag.viewtoggle + ), + + Awful.button( + { Modkey }, 3, + function(t) + if client.focus then + client.focus:toggle_tag(t) + end + end + ), + + Awful.button({}, 4, + function(t) + Awful.tag.viewnext(t.screen) + end + ), + + Awful.button( + {}, 5, + function(t) + Awful.tag.viewprev(t.screen) + end + ) +) diff --git a/configs/awesome/wibar/tasklist.lua b/configs/awesome/wibar/tasklist.lua new file mode 100644 index 0000000..d61e604 --- /dev/null +++ b/configs/awesome/wibar/tasklist.lua @@ -0,0 +1,37 @@ +Tasklist_buttons = Gears.table.join( + Awful.button( + {}, 1, + function(c) + if c == client.focus then + c.minimized = true + else + c:emit_signal( + "request::activate", + "tasklist", + { raise = true } + ) + end + end + ), + + Awful.button( + {}, 3, + function() + Awful.menu.client_list( + { theme = { width = 250 } } + ) + end + ), + Awful.button( + {}, 4, + function() + Awful.client.focus.byidx(1) + end + ), + Awful.button( + {}, 5, + function() + Awful.client.focus.byidx(-1) + end + ) +) diff --git a/configs/awesome/wibar/widgets.lua b/configs/awesome/wibar/widgets.lua new file mode 100644 index 0000000..0051e01 --- /dev/null +++ b/configs/awesome/wibar/widgets.lua @@ -0,0 +1,28 @@ +Calendar_widget = require("awesome-wm-widgets.calendar-widget.calendar") +Cpu_widget = require("awesome-wm-widgets.cpu-widget.cpu-widget") +Ram_widget = require("awesome-wm-widgets.ram-widget.ram-widget") +Batteryarc_widget = require("awesome-wm-widgets.batteryarc-widget.batteryarc") + + +Mytextclock = Wibox.widget { + format = ' %a %b %d, %I:%M%P ', + widget = Wibox.widget.textclock +} + +local cw = Calendar_widget( + { + placement = 'top_right', + start_sunday = 'true', + previous_month_button = 4, + next_month_button = 5, + } +) + +Mytextclock:connect_signal( + "button::press", + function(_, _, _, button) + if button == 1 then + cw.toggle() + end + end +) diff --git a/configs/i3bar-river/config.toml b/configs/i3bar-river/config.toml deleted file mode 100644 index 99a1917..0000000 --- a/configs/i3bar-river/config.toml +++ /dev/null @@ -1,54 +0,0 @@ -# The status generator command. -# Optional: with no status generator the bar will display only tags and layout name. -command = "i3status-rs" - -# Colors -background = "#04070A" -tag_bg = "#04070A" -tag_inactive_bg = "#04070A" -tag_urgent_fg = "#04070A" - -tag_fg = "#dff1f2" -tag_inactive_fg = "#dff1f2" -tag_focused_fg = "#dff1f2" -color = "#dff1f2" - -separator = "#9a8a62ff" - -tag_focused_bg = "#3E758A" - -tag_urgent_bg = "#9C994A" - -# The font and various sizes -font = "monospace 10" -height = 24 -margin_top = 0 -margin_bottom = 0 -margin_left = 0 -margin_right = 0 -separator_width = 2.0 -tags_r = 0.0 -tags_padding = 25.0 -blocks_r = 0.0 -blocks_overlap = 0.0 - -# Misc -position = "top" # either "top" or "bottom" -hide_inactive_tags = true -invert_touchpad_scrolling = true -show_layout_name = false -blend = true # whether tags/blocks colors should blend with bar's background -show_mode = true - -# WM-specific options -[wm.river] -max_tag = 9 # Show only the first nine tags - -# Per output overrides -# [output.your-output-name] -# right now only "enable" option is available -# enable = false -# -# You can have any number of overrides -# [output.eDP-1] -# enable = false diff --git a/configs/i3status-rust/config.toml b/configs/i3status-rust/config.toml deleted file mode 100644 index 0c63b9d..0000000 --- a/configs/i3status-rust/config.toml +++ /dev/null @@ -1,50 +0,0 @@ -icons_format = "{icon}" - -[theme] -theme = "native" - -[icons] -icons = "awesome5" -[icons.overrides] -# bat = ["| |", "|¼|", "|½|", "|¾|", "|X|"] -# bat_charging = "|^| " - -[[block]] -block = "cpu" - -[[block]] -block = "memory" -format = " $icon $mem_used_percents.eng(w:2) $icon_swap $swap_used_percents.eng(w:2) " -interval = 5 -warning_mem = 70 -critical_mem = 90 - -[[block]] -block = "net" -format = " $icon {$signal_strength} " - -[[block]] -block = "bluetooth" -mac = "40:2C:F4:B6:D9:B2" -disconnected_format = "" -format = " $icon " -[block.battery_state] -"0..20" = "critical" -"21..70" = "warning" -"71..100" = "good" - -[[block]] -block = "sound" -[[block.click]] -button = "left" -cmd = "pavucontrol" - -[[block]] -block = "battery" -format = "$icon $percentage " -missing_format = "" - -[[block]] -block = "time" -interval = 5 -format = " $timestamp.datetime(f:'%a %m/%d %I:%M%p') " diff --git a/configs/kitty/kitty.conf b/configs/kitty/kitty.conf deleted file mode 100644 index 1196a96..0000000 --- a/configs/kitty/kitty.conf +++ /dev/null @@ -1,4 +0,0 @@ -background_opacity 0.8 -font_size 11 -include ~/.cache/wal/colors-kitty.conf -enable_audio_bell no diff --git a/configs/mako/config b/configs/mako/config deleted file mode 100644 index 76b23de..0000000 --- a/configs/mako/config +++ /dev/null @@ -1,2 +0,0 @@ -ignore-timeout=1 -default-timeout=5000 diff --git a/configs/mako/update-theme b/configs/mako/update-theme deleted file mode 100755 index ebac452..0000000 --- a/configs/mako/update-theme +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/sh - -. "${HOME}/.cache/wal/colors.sh" - -conffile="~/.config/mako/config" - -# Associative array, color name -> color code. -declare -A colors -colors=( - ["background-color"]="${background}89" - ["text-color"]="$foreground" - ["border-color"]="$color13" -) - -for color_name in "${!colors[@]}"; do - # replace first occurance of each color in config file - sed -i "0,/^$color_name.*/{s//$color_name=${colors[$color_name]}/}" $conffile -done - -makoctl reload diff --git a/configs/river/init b/configs/river/init deleted file mode 100755 index d129ae0..0000000 --- a/configs/river/init +++ /dev/null @@ -1,189 +0,0 @@ -#!/bin/sh - -# Startup -swaybg -i ~/.cache/wal/bg & -mako & - -# Terminal -riverctl map normal Super Return spawn "alacritty" - -# Browsers -riverctl map normal Super W spawn "firefox-developer-edition" -riverctl map normal Super+Shift W spawn "chromium" - -# Email -riverctl map normal Super E spawn "thunderbird" - -# Runner -riverctl map normal Super R spawn "fuzzel" - -# Chat stuff -riverctl map normal Super+Shift C spawn "telegram-desktop" -riverctl map normal Super C spawn "caprine" -riverctl map normal Super D spawn "discord" - -# Games -riverctl map normal Super G spawn "steam-native" -riverctl map normal Super+Shift G spawn "lutris" - -# Image editor -riverctl map normal Super I spawn "gimp" - -# Music -riverctl map normal Super M spawn "spotify-launcher" - -# Run script to set new random bg/colors -riverctl map normal Super+Shift P spawn "doorsbg" - -# Screenshots -riverctl map normal None Print spawn "grim - | wl-copy" -riverctl map normal Shift Print spawn 'grim -g "$(slurp)" - | wl-copy' - -# Super+Q to close the focused view -riverctl map normal Super Q close - -# Super+Shift+E to exit river -riverctl map normal Super+Shift E exit - -# Super+J and Super+K to focus the next/previous view in the layout stack -riverctl map normal Super J focus-view next -riverctl map normal Super K focus-view previous - -# Super+Shift+J and Super+Shift+K to swap the focused view with the next/previous -# view in the layout stack -riverctl map normal Super+Shift J swap next -riverctl map normal Super+Shift K swap previous - -# Super+Period and Super+Comma to focus the next/previous output -riverctl map normal Super Period focus-output next -riverctl map normal Super Comma focus-output previous - -# Super+Shift+{Period,Comma} to send the focused view to the next/previous output -riverctl map normal Super+Shift Period send-to-output next -riverctl map normal Super+Shift Comma send-to-output previous - -# Super+Return to bump the focused view to the top of the layout stack -riverctl map normal Super+Shift Return zoom - -# Super+H and Super+L to decrease/increase the main ratio of rivertile(1) -riverctl map normal Super H send-layout-cmd rivertile "main-ratio -0.05" -riverctl map normal Super L send-layout-cmd rivertile "main-ratio +0.05" - -# Super+Shift+H and Super+Shift+L to increment/decrement the main count of rivertile(1) -riverctl map normal Super+Shift H send-layout-cmd rivertile "main-count +1" -riverctl map normal Super+Shift L send-layout-cmd rivertile "main-count -1" - -# Super+Alt+{H,J,K,L} to move views -riverctl map normal Super+Alt H move left 100 -riverctl map normal Super+Alt J move down 100 -riverctl map normal Super+Alt K move up 100 -riverctl map normal Super+Alt L move right 100 - -# Super+Alt+Control+{H,J,K,L} to snap views to screen edges -riverctl map normal Super+Alt+Control H snap left -riverctl map normal Super+Alt+Control J snap down -riverctl map normal Super+Alt+Control K snap up -riverctl map normal Super+Alt+Control L snap right - -# Super+Alt+Shift+{H,J,K,L} to resize views -riverctl map normal Super+Alt+Shift H resize horizontal -100 -riverctl map normal Super+Alt+Shift J resize vertical 100 -riverctl map normal Super+Alt+Shift K resize vertical -100 -riverctl map normal Super+Alt+Shift L resize horizontal 100 - -# Super + Left Mouse Button to move views -riverctl map-pointer normal Super BTN_LEFT move-view - -# Super + Right Mouse Button to resize views -riverctl map-pointer normal Super BTN_RIGHT resize-view - -# Super + Middle Mouse Button to toggle float -riverctl map-pointer normal Super BTN_MIDDLE toggle-float - -for i in $(seq 1 9) -do - tags=$((1 << ($i - 1))) - - # Super+[1-9] to focus tag [0-8] - riverctl map normal Super $i set-focused-tags $tags - - # Super+Shift+[1-9] to tag focused view with tag [0-8] - riverctl map normal Super+Shift $i set-view-tags $tags - - # Super+Control+[1-9] to toggle focus of tag [0-8] - riverctl map normal Super+Control $i toggle-focused-tags $tags - - # Super+Shift+Control+[1-9] to toggle tag [0-8] of focused view - riverctl map normal Super+Shift+Control $i toggle-view-tags $tags -done - -# Super+0 to focus all tags -# Super+Shift+0 to tag focused view with all tags -all_tags=$(((1 << 32) - 1)) -riverctl map normal Super 0 set-focused-tags $all_tags -riverctl map normal Super+Shift 0 set-view-tags $all_tags - -# Super+Space to toggle float -riverctl map normal Super Space toggle-float - -# Super+F to toggle fullscreen -riverctl map normal Super F toggle-fullscreen - -# Super+{Up,Right,Down,Left} to change layout orientation -riverctl map normal Super Up send-layout-cmd rivertile "main-location top" -riverctl map normal Super Right send-layout-cmd rivertile "main-location right" -riverctl map normal Super Down send-layout-cmd rivertile "main-location bottom" -riverctl map normal Super Left send-layout-cmd rivertile "main-location left" - -# Declare a passthrough mode. This mode has only a single mapping to return to -# normal mode. This makes it useful for testing a nested wayland compositor -riverctl declare-mode passthrough - -# Super+F11 to enter passthrough mode -riverctl map normal Super F11 enter-mode passthrough - -# Super+F11 to return to normal mode -riverctl map passthrough Super F11 enter-mode normal - -# Various media key mapping examples for both normal and locked mode which do -# not have a modifier -for mode in normal locked -do - # Eject the optical drive (well if you still have one that is) - riverctl map $mode None XF86Eject spawn 'eject -T' - - # Control pulse audio volume with pamixer (https://github.com/cdemoulins/pamixer) - riverctl map $mode None XF86AudioRaiseVolume spawn 'pamixer -i 5' - riverctl map $mode None XF86AudioLowerVolume spawn 'pamixer -d 5' - riverctl map $mode None XF86AudioMute spawn 'pamixer --toggle-mute' - - # Control MPRIS aware media players with playerctl (https://github.com/altdesktop/playerctl) - riverctl map $mode None XF86AudioMedia spawn 'playerctl play-pause' - riverctl map $mode None XF86AudioPlay spawn 'playerctl play-pause' - riverctl map $mode None XF86AudioPrev spawn 'playerctl previous' - riverctl map $mode None XF86AudioNext spawn 'playerctl next' - - # Control screen backlight brightness with light (https://github.com/haikarainen/light) - riverctl map $mode None XF86MonBrightnessUp spawn 'light -A 5' - riverctl map $mode None XF86MonBrightnessDown spawn 'light -U 5' -done - -# Set background and border color -riverctl background-color 0x002b36 -riverctl border-color-focused 0x93a1a1 -riverctl border-color-unfocused 0x586e75 - -# Set keyboard repeat rate -riverctl set-repeat 50 300 - -# Make all views with an app-id that starts with "float" and title "foo" start floating. -riverctl rule-add float -app-id 'float*' -title 'foo' - -# Make all views with app-id "bar" and any title use client-side decorations -riverctl rule-add csd -app-id "bar" - -# Set the default layout generator to be rivertile and start it. -# River will send the process group of the init executable SIGTERM on exit. -riverctl default-layout rivertile -rivertile -view-padding 6 -outer-padding 6 & -riverctl spawn i3bar-river diff --git a/configs/shell/profile b/configs/shell/profile index 9a11bc6..8877648 100644 --- a/configs/shell/profile +++ b/configs/shell/profile @@ -3,13 +3,6 @@ # Keyboard lights [ -x "$(command -v g610-led)" ] && g610-led -a ff -# The way life should be -export XKB_DEFAULT_OPTIONS=caps:escape,altwin:menu_win,altwin:meta_win - -# Wayland stuff -export WLR_NO_HARDWARE_CURSORS=1 # thanks NVIDIA -export MOZ_ENABLE_WAYLAND=1 - export PATH="$PATH:$(du "$HOME/.local/bin" | cut -f2 | paste -sd ':' -)" unsetopt PROMPT_SP @@ -122,8 +115,3 @@ ex=🎯:\ *.jar=♨:\ *.java=♨:\ " - -# Unsafe -# if [[ -z $WAYLAND_DISPLAY && $(tty) = "/dev/tty1" ]]; then -# exec river -# fi diff --git a/configs/spotify-launcher.conf b/configs/spotify-launcher.conf deleted file mode 100644 index ec4c272..0000000 --- a/configs/spotify-launcher.conf +++ /dev/null @@ -1,2 +0,0 @@ -[spotify] -extra_arguments = ["--enable-features=UseOzonePlatform", "--ozone-platform=wayland"] diff --git a/configs/wal/templates/colors-alacritty.toml b/configs/wal/templates/colors-alacritty.toml new file mode 100644 index 0000000..8d64ce6 --- /dev/null +++ b/configs/wal/templates/colors-alacritty.toml @@ -0,0 +1,27 @@ +[colors.primary] +background = "#0c050d" +foreground = "#d9d1da" + +[colors.cursor] +cursor = "#d9d1da" +text = "CellForeground" + +[colors.normal] +black = "#0c050d" +red = "#B8344C" +green = "#EC075B" +yellow = "#B58C70" +blue = "#12718A" +magenta = "#E05497" +cyan = "#28A6B8" +white = "#d9d1da" + +[colors.bright] +black = "#979298" +red = "#B8344C" +green = "#EC075B" +yellow = "#B58C70" +blue = "#12718A" +magenta = "#E05497" +cyan = "#28A6B8" +white = "#d9d1da" diff --git a/configs/wal/templates/colors-alacritty.yml b/configs/wal/templates/colors-alacritty.yml deleted file mode 100644 index d483757..0000000 --- a/configs/wal/templates/colors-alacritty.yml +++ /dev/null @@ -1,25 +0,0 @@ -colors: - primary: - background: '{background}' - foreground: '{foreground}' - cursor: - text: CellForeground - cursor: '{cursor}' - normal: - black: '{color0}' - red: '{color1}' - green: '{color2}' - yellow: '{color3}' - blue: '{color4}' - magenta: '{color5}' - cyan: '{color6}' - white: '{color7}' - bright: - black: '{color8}' - red: '{color9}' - green: '{color10}' - yellow: '{color11}' - blue: '{color12}' - magenta: '{color13}' - cyan: '{color14}' - white: '{color15}' diff --git a/configs/x11/xinitrc b/configs/x11/xinitrc new file mode 100755 index 0000000..10a0d45 --- /dev/null +++ b/configs/x11/xinitrc @@ -0,0 +1,24 @@ +#!/bin/sh + +# startx/xinit run this script + +set -e + +# Run xprofile +if [ -f "${XDG_CONFIG_HOME:-$HOME/.config}/x11/xprofile" ]; then + . "${XDG_CONFIG_HOME:-$HOME/.config}/x11/xprofile" +else + . "$HOME/.xprofile" +fi + +# Set up optimus on some laptops if optimus-manager exists +if [ -x $(command -v optimus-manager) ]; then + sudo prime-switch + prime-offload +fi + +# Set system colors +wal -R + +# Start awesome +ssh-agent awesome diff --git a/configs/x11/xprofile b/configs/x11/xprofile new file mode 100755 index 0000000..eded952 --- /dev/null +++ b/configs/x11/xprofile @@ -0,0 +1,16 @@ +#!/bin/sh + +# This is called by xinitrc during x startup + +set -e + +# Run multi-monitor config if it exists +if [ -f ".screenlayout/default.sh" ]; then + . ".screenlayout/default.sh" & +fi + +picom -b & # Compositor +xset r rate 150 50 & # Key repeat rate +unclutter & # Hide mouse cursor after inactivity +redshift -l 43:-70 & # Tint screen at night if you're in new england (should change) +xclip & # Make clipboard work