diff --git a/.gitignore b/.gitignore deleted file mode 100644 index dbee2ae..0000000 --- a/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/nvim/.config/nvim/plugin diff --git a/README.md b/README.md index e34475b..96bf7ed 100644 --- a/README.md +++ b/README.md @@ -1,3 +1 @@ # dotfiles - -Currently managed with stow. diff --git a/alacritty/.config/alacritty/alacritty.yml b/alacritty/.config/alacritty/alacritty.yml deleted file mode 100644 index 7ca9957..0000000 --- a/alacritty/.config/alacritty/alacritty.yml +++ /dev/null @@ -1,45 +0,0 @@ -window: - padding: - x: 8 - y: 8 - -font: - normal: - family: 'Go Mono' - style: 'Regular' - bold: - family: 'Go Mono' - style: 'Bold' - italic: - family: 'Go Mono' - style: 'Italic' - bold_italic: - family: 'Go Mono' - style: 'Bold Italic' - - size: 6 - -colors: - primary: - background: '#fdf6e3' - foreground: '#586e75' - - normal: - black: '#073642' - red: '#dc322f' - green: '#859900' - yellow: '#b58900' - blue: '#268bd2' - magenta: '#d33682' - cyan: '#2aa198' - white: '#eee8d5' - - bright: - black: '#002b36' - red: '#cb4b16' - green: '#586e75' - yellow: '#657b83' - blue: '#839496' - magenta: '#6c71c4' - cyan: '#93a1a1' - white: '#fdf6e3' diff --git a/awesome/.config/awesome/configuration/README.org b/awesome/.config/awesome/configuration/README.org deleted file mode 100644 index 1076dc4..0000000 --- a/awesome/.config/awesome/configuration/README.org +++ /dev/null @@ -1,4 +0,0 @@ -* The AwesomeWM Main Configuration - -Here are all the main configuration files for primarily AwesomeWM. -In config.lua you can edit common variables easily. diff --git a/awesome/.config/awesome/configuration/apps.lua b/awesome/.config/awesome/configuration/apps.lua deleted file mode 100644 index 9b0f9f2..0000000 --- a/awesome/.config/awesome/configuration/apps.lua +++ /dev/null @@ -1,35 +0,0 @@ -local dpi = require("beautiful.xresources").apply_dpi -local menubar = require("menubar") - -apps = { - - -- Your default terminal - terminal = "alacritty", - - -- Your default text editor - editor = os.getenv("EDITOR") or "vim", - - -- editor_cmd = terminal .. " -e " .. editor, - - -- Your default browser - browser = "chromium", - - -- Your default screenshot tool - screenshot = "flameshot gui", - - -- Screenlocker - -- screenlocker = "i3lock -ec '#f5efdc'", - screenlocker = "slock", - - -- brightness - brightness_up = "xbacklight -inc 1", - brightness_up_more = "xbacklight -inc 5", - brightness_down = "xbacklight -dec 1", - brightness_down_more = "xbacklight -dec 5", -} - -apps.editor_cmd = apps.terminal .. " -e " .. apps.editor -menubar.utils.terminal = apps.terminal -- Set the terminal for applications that require it - - -return apps diff --git a/awesome/.config/awesome/configuration/autostart.lua b/awesome/.config/awesome/configuration/autostart.lua deleted file mode 100644 index 7a20bac..0000000 --- a/awesome/.config/awesome/configuration/autostart.lua +++ /dev/null @@ -1,24 +0,0 @@ -local apps = require('configuration.apps') -local filesystem = require('gears.filesystem') - --- List of apps to start once on start-up -return { - run_on_start_up = { - - -- 'picom --config ' .. filesystem.get_configuration_dir() .. 'configuration/picom.conf', - -- 'nm-applet --indicator', -- wifi - --'blueberry-tray', -- Bluetooth tray icon - --'xfce4-power-manager', -- Power manager - 'numlockx on', -- enable numlock - -- '/usr/lib/policykit-1-gnome/polkit-gnome-authentication-agent-1 & eval $(gnome-keyring-daemon -s --components=pkcs11,secrets,ssh,gpg)', -- credential manager (alternate directory if the first one is incorrect) - '/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 & eval $(gnome-keyring-daemon -s --components=pkcs11,secrets,ssh,gpg)', -- credential manager - --'/usr/lib/x86_64-linux-gnu/libexec/polkit-kde-authentication-agent-1 & eval $(gnome-keyring-daemon -s --components=pkcs11,secrets,ssh,gpg)', -- credential manager - -- '/usr/libexec/polkit-gnome-authentication-agent-1', -- credential manager - path for void linux - -- 'blueman-tray', -- bluetooth tray - - -- Add applications that need to be killed between reloads - -- to avoid multipled instances, inside the awspawn script - '~/.config/awesome/configuration/autostartonce.sh' -- Spawn "dirty" apps that can linger between sessions - - } -} diff --git a/awesome/.config/awesome/configuration/autostartonce.sh b/awesome/.config/awesome/configuration/autostartonce.sh deleted file mode 100755 index 66b8c8b..0000000 --- a/awesome/.config/awesome/configuration/autostartonce.sh +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/bash -## This configuration file is meant for applications that -# still run in the background when a reload is triggered -# for awesome, this script just kills the running instance -# and starts a new one. -# Only add applications/scripts without parameters here -# (if you want to apply parameters then use a script file!) - -# List of applications to run -# the script $HOME/.config/awesomestart -# is intended to be a copy of this file -# to allow out of tree autostart programs -APPS=( - # keepassxc - # kdeconnect-indicator - # radeon-profile - # $HOME/.config/awesomestart - flameshot - xbanish -) - -# Some applications start child applications that need to be killed on reload -KILL=( - # synergyc - # nextcloud -) - -# First kill lingering apps -for app in "${APPS[@]}" -do - kill -9 $(pidof $app) -done -for app in "${KILL[@]}" -do - kill -9 $(pidof $app) -done - -# Start new instances -for app in "${APPS[@]}" -do - env $app ${@:2} & -done diff --git a/awesome/.config/awesome/configuration/client/buttons.lua b/awesome/.config/awesome/configuration/client/buttons.lua deleted file mode 100644 index 8ceb154..0000000 --- a/awesome/.config/awesome/configuration/client/buttons.lua +++ /dev/null @@ -1,21 +0,0 @@ -local awful = require('awful') -local gears = require('gears') - -local modkey = require('configuration.keys.mod').modKey - -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) -) - -return clientButtons - diff --git a/awesome/.config/awesome/configuration/client/init.lua b/awesome/.config/awesome/configuration/client/init.lua deleted file mode 100644 index bbd5480..0000000 --- a/awesome/.config/awesome/configuration/client/init.lua +++ /dev/null @@ -1 +0,0 @@ -require('configuration.client.rules') diff --git a/awesome/.config/awesome/configuration/client/keys.lua b/awesome/.config/awesome/configuration/client/keys.lua deleted file mode 100644 index e61c0d6..0000000 --- a/awesome/.config/awesome/configuration/client/keys.lua +++ /dev/null @@ -1,52 +0,0 @@ -local awful = require('awful') -local gears = require('gears') - -require('awful.autofocus') -local modkey = require('configuration.keys.mod').modKey -local altkey = require('configuration.keys.mod').altKey - -clientKeys = gears.table.join( - awful.key({ modkey, }, "f", - function (c) - c.fullscreen = not c.fullscreen - c:raise() - end, - {description = "toggle fullscreen", group = "client"}), - awful.key({ modkey, "Shift" }, "c", function (c) c:kill() end, - {description = "close", group = "client"}), - awful.key({ modkey, "Control" }, "space", awful.client.floating.toggle , - {description = "toggle floating", group = "client"}), - awful.key({ modkey, }, "Return", function (c) c:swap(awful.client.getmaster()) end, - {description = "move to master", group = "client"}), - awful.key({ modkey, }, "o", function (c) c:move_to_screen() end, - {description = "move to screen", group = "client"}), - awful.key({ modkey, }, "t", function (c) c.ontop = not c.ontop end, - {description = "toggle keep on top", group = "client"}), - awful.key({ modkey, }, "n", - function (c) - -- The client currently has the input focus, so it cannot be - -- minimized, since minimized clients can't have the focus. - c.minimized = true - end , - {description = "minimize", group = "client"}), - awful.key({ modkey, }, "m", - function (c) - c.maximized = not c.maximized - c:raise() - end , - {description = "(un)maximize", group = "client"}), - awful.key({ modkey, "Control" }, "m", - function (c) - c.maximized_vertical = not c.maximized_vertical - c:raise() - end , - {description = "(un)maximize vertically", group = "client"}), - awful.key({ modkey, "Shift" }, "m", - function (c) - c.maximized_horizontal = not c.maximized_horizontal - c:raise() - end , - {description = "(un)maximize horizontally", group = "client"}) -) - -return clientKeys diff --git a/awesome/.config/awesome/configuration/client/rules.lua b/awesome/.config/awesome/configuration/client/rules.lua deleted file mode 100644 index be529d1..0000000 --- a/awesome/.config/awesome/configuration/client/rules.lua +++ /dev/null @@ -1,67 +0,0 @@ -local awful = require('awful') -local gears = require('gears') -local client_keys = require('configuration.client.keys') -local client_buttons = require('configuration.client.buttons') -local title_bars = require('configuration.client.titlebars') -local beautiful = require("beautiful") - --- {{{ Rules --- Rules to apply to new clients (through the "manage" signal). -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", - "mgba", - "veromix", - "oyster", -- for testing stuff - "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 = true } - }, - - -- Set Firefox to always map on the tag named "2" on screen 1. - -- { rule = { class = "Firefox" }, - -- properties = { screen = 1, tag = "2" } }, -} --- }}} - diff --git a/awesome/.config/awesome/configuration/client/titlebars.lua b/awesome/.config/awesome/configuration/client/titlebars.lua deleted file mode 100644 index 4fa336f..0000000 --- a/awesome/.config/awesome/configuration/client/titlebars.lua +++ /dev/null @@ -1,80 +0,0 @@ - -local gears = require("gears") -local awful = require("awful") -local wibox = require("wibox") - --- Double click titlebar timer, how long it takes for a 2 clicks to be considered a double click -function double_click_event_handler(double_click_event) - if double_click_timer then - double_click_timer:stop() - double_click_timer = nil - return true - end - - double_click_timer = gears.timer.start_new(0.20, function() - double_click_timer = nil - return false - end) -end - - --- Add a titlebar if titlebars_enabled is set to true in the rules. -client.connect_signal("request::titlebars", function(c) - do return end - -- original buttons for the titlebar, if you'd rather not have to double click functionality - -- 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) - -- ) - - -- new buttons for the titlebar, this allows you to double click and toggle maximization of client - local buttons = awful.util.table.join( - buttons, - awful.button({ }, 1, function() - c:emit_signal("request::activate", "titlebar", {raise = true}) - -- WILL EXECUTE THIS ON DOUBLE CLICK - if double_click_event_handler() then - c.maximized = not c.maximized - c:raise() - else - awful.mouse.client.move(c) - end - 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) diff --git a/awesome/.config/awesome/configuration/config.lua b/awesome/.config/awesome/configuration/config.lua deleted file mode 100644 index e320fcb..0000000 --- a/awesome/.config/awesome/configuration/config.lua +++ /dev/null @@ -1,29 +0,0 @@ -local dpi = require("beautiful.xresources").apply_dpi -local awful = require('awful') - --- vw/vh are used when you want certain elements to scale nicely/the same on all monitors/resolutions. --- 1 vw unit = Relative to 1% of the width of the screen it is targetting --- 1 vh unit = Relative to 1% of the height of the screen it is targetting -awful.screen.connect_for_each_screen(function(s) - - function vw(width) - vw = (s.geometry.width / 100) * width - return vw; - end - - function vh(height) - vw = (s.geometry.height / 100) * height - return vw; - end - -end) - --- You can store common configuration variables here, or completely get rid of this file. -local configuration = { - - -- Width of the top panel - toppanel_height = dpi(20), - -} - -return configuration diff --git a/awesome/.config/awesome/configuration/init.lua b/awesome/.config/awesome/configuration/init.lua deleted file mode 100644 index 4376255..0000000 --- a/awesome/.config/awesome/configuration/init.lua +++ /dev/null @@ -1,5 +0,0 @@ -return { - keys = require("configuration.keys"), - apps = require("configuration.apps"), - configuration = require("configuration.config") -} diff --git a/awesome/.config/awesome/configuration/keys/global.lua b/awesome/.config/awesome/configuration/keys/global.lua deleted file mode 100644 index 9af2d44..0000000 --- a/awesome/.config/awesome/configuration/keys/global.lua +++ /dev/null @@ -1,247 +0,0 @@ -local awful = require('awful') -local gears = require("gears") -local menubar = require("menubar") - -require('awful.autofocus') -local beautiful = require('beautiful') -local hotkeys_popup = require('awful.hotkeys_popup').widget - -local modkey = require('configuration.keys.mod').modKey -local altkey = require('configuration.keys.mod').altKey -local apps = require('configuration.apps') - --- {{{ Key bindings -globalKeys = gears.table.join( - awful.key({ modkey, }, "s", hotkeys_popup.show_help, - {description="show help", group="awesome"}), - - awful.key({ modkey, }, "Left", awful.tag.viewprev, - {description = "view previous", group = "tag"}), - awful.key({ modkey, }, "Right", awful.tag.viewnext, - {description = "view next", group = "tag"}), - - awful.key({ modkey, "Shift" }, "Left", - function () - -- get current tag - local t = client.focus and client.focus.first_tag or nil - if t == nil then - return - end - -- get previous tag (modulo 9 excluding 0 to wrap from 1 to 9) - local tag = client.focus.screen.tags[(t.index - 2) % 9 + 1] - awful.client.movetotag(tag) - awful.tag.viewprev() - end, - {description = "move client to previous tag and switch to it", group = "tag"}), - - awful.key({ modkey, "Shift" }, "Right", - function () - -- get current tag - local t = client.focus and client.focus.first_tag or nil - if t == nil then - return - end - -- get next tag (modulo 9 excluding 0 to wrap from 9 to 1) - local tag = client.focus.screen.tags[(t.index % 9) + 1] - awful.client.movetotag(tag) - awful.tag.viewnext() - end, - {description = "move client to next tag and switch to it", group = "tag"}), - - awful.key({ modkey, }, "Escape", awful.tag.history.restore, - {description = "go back", group = "tag"}), - - awful.key({ modkey, }, "j", - function () - awful.client.focus.byidx( 1) - end, - {description = "focus next by index", group = "client"} - ), - awful.key({ modkey, }, "k", - function () - awful.client.focus.byidx(-1) - end, - {description = "focus previous by index", group = "client"} - ), - - awful.key({ modkey, }, "Down", - function () - awful.client.focus.byidx( 1) - end, - {description = "focus next by index", group = "client"} - ), - awful.key({ modkey, }, "Up", - function () - awful.client.focus.byidx(-1) - end, - {description = "focus previous by index", group = "client"} - ), - - -- Layout manipulation - awful.key({ modkey, "Shift" }, "j", function () awful.client.swap.byidx( 1) end, - {description = "swap with next client by index", group = "client"}), - awful.key({ modkey, "Shift" }, "k", function () awful.client.swap.byidx( -1) end, - {description = "swap with previous client by index", group = "client"}), - awful.key({ modkey, "Shift" }, "Down", function () awful.client.swap.byidx( 1) end, - {description = "swap with next client by index", group = "client"}), - awful.key({ modkey, "Shift" }, "Up", function () awful.client.swap.byidx( -1) end, - {description = "swap with previous client by index", group = "client"}), - awful.key({ modkey, "Control" }, "j", function () awful.screen.focus_relative( 1) end, - {description = "focus the next screen", group = "screen"}), - awful.key({ modkey, "Control" }, "k", function () awful.screen.focus_relative(-1) end, - {description = "focus the previous screen", group = "screen"}), - awful.key({ modkey, }, "u", awful.client.urgent.jumpto, - {description = "jump to urgent client", group = "client"}), - awful.key({ modkey, }, "Tab", - function () - awful.client.focus.history.previous() - if client.focus then - client.focus:raise() - end - end, - {description = "go back", group = "client"}), - - -- Standard program - awful.key({ modkey, "Shift" }, "Return", function () awful.spawn(apps.terminal) end, - {description = "open a terminal", group = "launcher"}), - awful.key({ modkey, "Control" }, "r", awesome.restart, - {description = "reload awesome", group = "awesome"}), - awful.key({ modkey, "Shift" }, "q", awesome.quit, - {description = "quit awesome", group = "awesome"}), - - awful.key({ modkey, }, "h", function () awful.tag.incmwfact( 0.05) end, - {description = "increase master width factor", group = "layout"}), - awful.key({ modkey, }, "l", function () awful.tag.incmwfact(-0.05) end, - {description = "decrease master width factor", group = "layout"}), - awful.key({ modkey, "Shift" }, "h", function () awful.tag.incnmaster(-1, nil, true) end, - {description = "decrease the number of master clients", group = "layout"}), - awful.key({ modkey, "Shift" }, "l", function () awful.tag.incnmaster( 1, nil, true) end, - {description = "increase the number of master clients", group = "layout"}), - awful.key({ modkey, "Control" }, "h", function () awful.tag.incncol(-1, nil, true) end, - {description = "decrease the number of columns", group = "layout"}), - awful.key({ modkey, "Control" }, "l", function () awful.tag.incncol( 1, nil, true) end, - {description = "increase the number of columns", group = "layout"}), - awful.key({ modkey, }, "space", function () awful.layout.inc( 1) end, - {description = "select next", group = "layout"}), - awful.key({ modkey, "Shift" }, "space", function () awful.layout.inc(-1) end, - {description = "select previous", group = "layout"}), - - awful.key({ modkey, "Control" }, "n", - function () - local c = awful.client.restore() - -- Focus restored client - if c then - c:emit_signal( - "request::activate", "key.unminimize", {raise = true} - ) - end - end, - {description = "restore minimized", group = "client"}), - - -- Prompt - awful.key({ modkey }, "r", function () awful.screen.focused().mypromptbox:run() end, - {description = "run prompt", group = "launcher"}), - - awful.key({ modkey, "Control" }, "x", - function () - awful.prompt.run { - prompt = "Run Lua code: ", - textbox = awful.screen.focused().mypromptbox.widget, - exe_callback = awful.util.eval, - history_path = awful.util.get_cache_dir() .. "/history_eval" - } - end, - {description = "lua execute prompt", group = "awesome"}), - - -- Apps - awful.key({ modkey }, "p", function () awful.spawn(apps.screenshot) end, - {description = "take screenshot", group = "apps"}), - awful.key({ modkey }, "i", function () awful.spawn(apps.browser) end, - {description = "open browser", group = "apps"}), - awful.key({ modkey, "Shift" }, "y", function () awful.spawn(apps.screenlocker) end, - {description = "lock screen", group = "apps"}), - - -- Brightness - awful.key({ modkey }, "x", function () awful.spawn(apps.brightness_up) end, - {description = "brightness up", group = "apps"}), - awful.key({ modkey, "Shift" }, "x", function () awful.spawn(apps.brightness_up_more) end, - {description = "brightness up more", group = "apps"}), - awful.key({ modkey }, "z", function () awful.spawn(apps.brightness_down) end, - {description = "brightness down", group = "apps"}), - awful.key({ modkey, "Shift" }, "z", function () awful.spawn(apps.brightness_down_more) end, - {description = "brightness downm more", group = "apps"}) -) - --- Bind all key numbers to tags. --- Be careful: we use keycodes to make it works on any keyboard layout. --- This should map on the top row of your keyboard, usually 1 to 9. -for i = 1, 9 do - -- Hack to only show tags 1 and 9 in the shortcut window (mod+s) - local descr_view, descr_toggle, descr_move, descr_toggle_focus - if i == 1 or i == 9 then - descr_view = {description = 'view tag #', group = 'tag'} - descr_toggle = {description = 'toggle tag #', group = 'tag'} - descr_move = {description = 'move focused client to tag #', group = 'tag'} - descr_toggle_focus = {description = 'toggle focused client on tag #', group = 'tag'} - end - globalKeys = - awful.util.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, - descr_view - ), - -- 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, - descr_toggle - ), - -- Move client to tag. - awful.key( - {modkey, 'Shift'}, - '#' .. i + 9, - function() - if _G.client.focus then - local tag = _G.client.focus.screen.tags[i] - if tag then - _G.client.focus:move_to_tag(tag) - end - end - end, - descr_move - ), - -- Toggle tag on focused client. - awful.key( - {modkey, 'Control', 'Shift'}, - '#' .. i + 9, - function() - if _G.client.focus then - local tag = _G.client.focus.screen.tags[i] - if tag then - _G.client.focus:toggle_tag(tag) - end - end - end, - descr_toggle_focus - ) - ) -end - -return globalKeys diff --git a/awesome/.config/awesome/configuration/keys/init.lua b/awesome/.config/awesome/configuration/keys/init.lua deleted file mode 100644 index 9591667..0000000 --- a/awesome/.config/awesome/configuration/keys/init.lua +++ /dev/null @@ -1,4 +0,0 @@ -return { - mod = require('configuration.keys.mod'), - global = require('configuration.keys.global') -} diff --git a/awesome/.config/awesome/configuration/keys/mod.lua b/awesome/.config/awesome/configuration/keys/mod.lua deleted file mode 100644 index 40532d9..0000000 --- a/awesome/.config/awesome/configuration/keys/mod.lua +++ /dev/null @@ -1,4 +0,0 @@ -return { - modKey = 'Mod4', - altKey = 'Mod1' -} diff --git a/awesome/.config/awesome/configuration/mouse/desktop.lua b/awesome/.config/awesome/configuration/mouse/desktop.lua deleted file mode 100644 index ea335bf..0000000 --- a/awesome/.config/awesome/configuration/mouse/desktop.lua +++ /dev/null @@ -1,26 +0,0 @@ -local gears = require("gears") -local awful = require("awful") -require("widgets.mainmenu") - --- Mousebindings that occur on the desktop -desktopMouse = gears.table.join( - awful.button({ }, 1, function () mymainmenu:hide() end), - awful.button({ }, 3, function () mymainmenu:toggle() end), - - -- This is the mousewheel on the unfocused desktop - awful.button({ }, 4, awful.tag.viewnext), - awful.button({ }, 5, awful.tag.viewprev) -) - -return desktopMouse - - --- {{{ Mouse bindings --- root.buttons(gears.table.join( --- awful.button({ }, 3, function () mymainmenu:toggle() end), - --- -- This is the mousewheel on the unfocused desktop --- awful.button({ }, 4, awful.tag.viewnext), --- awful.button({ }, 5, awful.tag.viewprev) --- )) --- }}} diff --git a/awesome/.config/awesome/configuration/picom.conf b/awesome/.config/awesome/configuration/picom.conf deleted file mode 100755 index a3b9c70..0000000 --- a/awesome/.config/awesome/configuration/picom.conf +++ /dev/null @@ -1,154 +0,0 @@ -# ▀ ▄▀▀ -# ▄▄▄▄ ▄▄▄ ▄▄▄ ▄▄▄ ▄▄▄▄▄ ▄▄▄ ▄▄▄ ▄ ▄▄ ▄▄█▄▄ -# █▀ ▀█ █ █▀ ▀ █▀ ▀█ █ █ █ █▀ ▀ █▀ ▀█ █▀ █ █ -# █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ -# ██▄█▀ ▄▄█▄▄ ▀█▄▄▀ ▀█▄█▀ █ █ █ █ ▀█▄▄▀ ▀█▄█▀ █ █ █ -# █ -# ▀ - - - - -# Shadow - -shadow = true; -shadow-radius = 12; -shadow-offset-x = -12; -shadow-offset-y = -12; -shadow-opacity = 0.7; - -# shadow-red = 0.0; -# shadow-green = 0.0; -# shadow-blue = 0.0; - -# shadow-exclude-reg = "x10+0+0"; -# xinerama-shadow-crop = true; - -shadow-exclude = [ - "name = 'Notification'", - "class_g = 'Conky'", - "class_g ?= 'Notify-osd'", - "class_g = 'Cairo-clock'", - "class_g = 'slop'", - "class_g = 'Firefox' && argb", - "class_g = 'Rofi'", - "_GTK_FRAME_EXTENTS@:c", - "_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'" -]; - -# Logs -log-level = "ERROR"; -log-file = "~/.cache/picom-log.log"; - - -# Opacity - -# inactive-opacity = 0.8; -# active-opacity = 0.8; -# frame-opacity = 0.7; -inactive-opacity-override = false; - -opacity-rule = [ - "80:class_g = 'URxvt'", - "80:class_g = 'UXTerm'", - "80:class_g = 'XTerm'", - "99:window_type = 'normal'", # Add a tiny bit of opacity to all normal windows to apply blur - "99:window_type = 'dialog'", # Add a tiny bit of opacity to all dialog windows to apply blur - "99:window_type = 'popup_menu'", # Add a tiny bit of opacity to all popup_menu windows to apply blur - "99:window_type = 'notification'", # Add a tiny bit of opacity to all popup_menu windows to apply blur - "99:window_type = 'dock'" # Add a tiny bit of opacity to all popup_menu windows to apply blur -]; - -# inactive-dim = 0.2; -# inactive-dim-fixed = true; - - -# Blur - -blur-method = "dual_kawase"; -blur-strength = 2.0; - # deviation = 1.0; - # kernel = "11x11gaussian"; - -blur-background = true; -blur-background-frame = true; -# blur-kern = "3x3box"; -# blur-kern = "5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1"; -blur-background-fixed = true; - -blur-background-exclude = [ - "window_type = 'desktop'", - "window_type = 'utility'", - "window_type = 'notification'", - "class_g = 'slop'", - "class_g = 'Firefox' && argb", - "class_g = 'Rofi'", - "_GTK_FRAME_EXTENTS@:c" -]; - -# max-brightness = 0.66 - -# Fading - -fading = true; -fade-delta = 3; -fade-in-step = 0.03; -fade-out-step = 0.03; -# no-fading-openclose = true; -# no-fading-destroyed-argb = true; -fade-exclude = [ ]; - -# Other - -backend = "glx"; -mark-wmwin-focused = true; -mark-ovredir-focused = true; -# use-ewmh-active-win = true; -detect-rounded-corners = true; -detect-client-opacity = true; -refresh-rate = 0; -vsync = true; -# sw-opti = true; -unredir-if-possible = false; -# unredir-if-possible-delay = 5000; -# unredir-if-possible-exclude = [ ]; -# focus-exclude = [ "class_g = 'Cairo-clock'" ]; - -focus-exclude = [ - "class_g = 'Cairo-clock'", - "class_g ?= 'rofi'", - "class_g ?= 'slop'", - "class_g ?= 'Steam'" -]; - - -detect-transient = true; -detect-client-leader = true; -invert-color-include = [ ]; -# resize-damage = 1; - -# GLX backend - -glx-no-stencil = true; -# glx-no-rebind-pixmap = true; -# xrender-sync-fence = true; -use-damage = true; - -# Window type settings - -wintypes: -{ - tooltip = { fade = true; shadow = false; focus = false; }; - normal = { shadow = false; }; - dock = { shadow = false; }; - dnd = { shadow = false; }; - popup_menu = { shadow = true; focus = false; opacity = 0.90; }; - dropdown_menu = { shadow = false; focus = false; }; - above = { shadow = true; }; - splash = { shadow = false; }; - utility = { focus = false; shadow = false; }; - notification = { shadow = false; }; - desktop = { shadow = true }; - menu = { focus = false }; - dialog = { shadow = true; }; -}; diff --git a/awesome/.config/awesome/configuration/tags/init.lua b/awesome/.config/awesome/configuration/tags/init.lua deleted file mode 100644 index 318d693..0000000 --- a/awesome/.config/awesome/configuration/tags/init.lua +++ /dev/null @@ -1,19 +0,0 @@ -local awful = require('awful') -local gears = require('gears') --- local icons = require('theme.icons') -local apps = require('configuration.apps') - --- Table of layouts to cover with awful.layout.inc, order matters. -awful.layout.layouts = { - awful.layout.suit.tile.left, - awful.layout.suit.corner.ne, -} --- }}} - --- Configure Tag Properties -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]) -end) --- }}} - diff --git a/awesome/.config/awesome/modules/README.org b/awesome/.config/awesome/modules/README.org deleted file mode 100644 index 0adde36..0000000 --- a/awesome/.config/awesome/modules/README.org +++ /dev/null @@ -1,4 +0,0 @@ -* AwesomeWM Modules - -Here are modules that are not particularly UI, widgets or inbuilt awesome -configuration elements. However they extend onto AwesomeWM. diff --git a/awesome/.config/awesome/modules/auto-start.lua b/awesome/.config/awesome/modules/auto-start.lua deleted file mode 100644 index d1a90cf..0000000 --- a/awesome/.config/awesome/modules/auto-start.lua +++ /dev/null @@ -1,18 +0,0 @@ --- MODULE AUTO-START --- Run all the apps listed in configuration/apps.lua as run_on_start_up only once when awesome start - -local awful = require('awful') -local autostart = require('configuration.autostart') - -local function run_once(cmd) - local findme = cmd - local firstspace = cmd:find(' ') - if firstspace then - findme = cmd:sub(0, firstspace - 1) - end - awful.spawn.with_shell(string.format('pgrep -u $USER -x %s > /dev/null || (%s)', findme, cmd)) -end - -for _, app in ipairs(autostart.run_on_start_up) do - run_once(app) -end diff --git a/awesome/.config/awesome/modules/set-wallpaper.lua b/awesome/.config/awesome/modules/set-wallpaper.lua deleted file mode 100644 index 6aac51b..0000000 --- a/awesome/.config/awesome/modules/set-wallpaper.lua +++ /dev/null @@ -1,23 +0,0 @@ -local gears = require("gears") -local awful = require("awful") -local beautiful = require("beautiful") - -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) - --- Set the same wallpaper for each screen, you could change this to have different wallpapers on each screen. -awful.screen.connect_for_each_screen(function(s) - set_wallpaper(s) -end) diff --git a/awesome/.config/awesome/modules/sloppy-focus.lua b/awesome/.config/awesome/modules/sloppy-focus.lua deleted file mode 100644 index a04aa35..0000000 --- a/awesome/.config/awesome/modules/sloppy-focus.lua +++ /dev/null @@ -1,11 +0,0 @@ --- Enable sloppy focus, so that focus follows mouse. - -local beautiful = require("beautiful") - -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/awesome/.config/awesome/rc.lua b/awesome/.config/awesome/rc.lua deleted file mode 100644 index ab05d59..0000000 --- a/awesome/.config/awesome/rc.lua +++ /dev/null @@ -1,83 +0,0 @@ --- If LuaRocks is installed, make sure that packages installed through it are --- found (e.g. lgi). If LuaRocks is not installed, do nothing. -pcall(require, "luarocks.loader") - --- Standard awesome library -local gears = require("gears") -local awful = require("awful") -require("awful.autofocus") - --- Widget and layout library -local wibox = require("wibox") - --- Theme handling library -local beautiful = require("beautiful") - --- Notification library -local naughty = require("naughty") -local menubar = require("menubar") -local hotkeys_popup = require("awful.hotkeys_popup") - --- Enable hotkeys help widget for VIM and other apps --- when client with a matching name is opened: -require("awful.hotkeys_popup.keys") - --- Themes define colours, icons, font and wallpapers. -beautiful.init(gears.filesystem.get_configuration_dir() .. "themes/mytheme/theme.lua") - --- Init all modules (You can add/remove active modules here) -require("modules.auto-start") -require("modules.sloppy-focus") -require("modules.set-wallpaper") - --- Setup UI Elements -require('ui') - --- Setup all configurations -require('configuration.tags') -require('configuration.client') -require('configuration.init') -_G.root.keys(require('configuration.keys.global')) -_G.root.buttons(require('configuration.mouse.desktop')) - --- {{{ Error handling --- Check if awesome encountered an error during startup and fell back to --- another config (This code will only ever execute for the fallback config) -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 --- }}} - --- {{{ Signals --- Signal function to execute when a new client appears. -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) - - diff --git a/awesome/.config/awesome/themes/mytheme/README b/awesome/.config/awesome/themes/mytheme/README deleted file mode 100644 index 1ddb349..0000000 --- a/awesome/.config/awesome/themes/mytheme/README +++ /dev/null @@ -1,3 +0,0 @@ -Background images: - Mikael Eriksson - Licensed under CC-BY-SA-3.0 diff --git a/awesome/.config/awesome/themes/mytheme/background.png b/awesome/.config/awesome/themes/mytheme/background.png deleted file mode 100644 index 8f52b6b..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/background.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/background_white.png b/awesome/.config/awesome/themes/mytheme/background_white.png deleted file mode 100644 index bb0c5d0..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/background_white.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/layouts/cornerne.png b/awesome/.config/awesome/themes/mytheme/layouts/cornerne.png deleted file mode 100644 index c85bd56..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/layouts/cornerne.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/layouts/cornernew.png b/awesome/.config/awesome/themes/mytheme/layouts/cornernew.png deleted file mode 100644 index c3fd986..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/layouts/cornernew.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/layouts/cornernw.png b/awesome/.config/awesome/themes/mytheme/layouts/cornernw.png deleted file mode 100644 index dfe78b3..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/layouts/cornernw.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/layouts/cornernww.png b/awesome/.config/awesome/themes/mytheme/layouts/cornernww.png deleted file mode 100644 index f489010..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/layouts/cornernww.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/layouts/cornerse.png b/awesome/.config/awesome/themes/mytheme/layouts/cornerse.png deleted file mode 100644 index 023ae79..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/layouts/cornerse.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/layouts/cornersew.png b/awesome/.config/awesome/themes/mytheme/layouts/cornersew.png deleted file mode 100644 index f7cfa1c..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/layouts/cornersew.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/layouts/cornersw.png b/awesome/.config/awesome/themes/mytheme/layouts/cornersw.png deleted file mode 100644 index c1453c9..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/layouts/cornersw.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/layouts/cornersww.png b/awesome/.config/awesome/themes/mytheme/layouts/cornersww.png deleted file mode 100644 index a65a043..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/layouts/cornersww.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/layouts/dwindle.png b/awesome/.config/awesome/themes/mytheme/layouts/dwindle.png deleted file mode 100644 index 9902d22..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/layouts/dwindle.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/layouts/dwindlew.png b/awesome/.config/awesome/themes/mytheme/layouts/dwindlew.png deleted file mode 100644 index 9199049..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/layouts/dwindlew.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/layouts/fairh.png b/awesome/.config/awesome/themes/mytheme/layouts/fairh.png deleted file mode 100644 index d41deea..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/layouts/fairh.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/layouts/fairhw.png b/awesome/.config/awesome/themes/mytheme/layouts/fairhw.png deleted file mode 100644 index bb50e3a..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/layouts/fairhw.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/layouts/fairv.png b/awesome/.config/awesome/themes/mytheme/layouts/fairv.png deleted file mode 100644 index f5f0288..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/layouts/fairv.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/layouts/fairvw.png b/awesome/.config/awesome/themes/mytheme/layouts/fairvw.png deleted file mode 100644 index 4f4ed52..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/layouts/fairvw.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/layouts/floating.png b/awesome/.config/awesome/themes/mytheme/layouts/floating.png deleted file mode 100644 index b8061a0..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/layouts/floating.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/layouts/floatingw.png b/awesome/.config/awesome/themes/mytheme/layouts/floatingw.png deleted file mode 100644 index 4815894..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/layouts/floatingw.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/layouts/fullscreen.png b/awesome/.config/awesome/themes/mytheme/layouts/fullscreen.png deleted file mode 100644 index d02f6fc..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/layouts/fullscreen.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/layouts/fullscreenw.png b/awesome/.config/awesome/themes/mytheme/layouts/fullscreenw.png deleted file mode 100644 index 5c35bfa..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/layouts/fullscreenw.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/layouts/magnifier.png b/awesome/.config/awesome/themes/mytheme/layouts/magnifier.png deleted file mode 100644 index 2925414..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/layouts/magnifier.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/layouts/magnifierw.png b/awesome/.config/awesome/themes/mytheme/layouts/magnifierw.png deleted file mode 100644 index 6209556..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/layouts/magnifierw.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/layouts/max.png b/awesome/.config/awesome/themes/mytheme/layouts/max.png deleted file mode 100644 index 8d20844..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/layouts/max.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/layouts/maxw.png b/awesome/.config/awesome/themes/mytheme/layouts/maxw.png deleted file mode 100644 index 85f5ce3..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/layouts/maxw.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/layouts/spiral.png b/awesome/.config/awesome/themes/mytheme/layouts/spiral.png deleted file mode 100644 index d9434be..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/layouts/spiral.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/layouts/spiralw.png b/awesome/.config/awesome/themes/mytheme/layouts/spiralw.png deleted file mode 100644 index b78dd86..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/layouts/spiralw.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/layouts/tile.png b/awesome/.config/awesome/themes/mytheme/layouts/tile.png deleted file mode 100644 index 3ede21e..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/layouts/tile.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/layouts/tilebottom.png b/awesome/.config/awesome/themes/mytheme/layouts/tilebottom.png deleted file mode 100644 index 6f8c257..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/layouts/tilebottom.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/layouts/tilebottomw.png b/awesome/.config/awesome/themes/mytheme/layouts/tilebottomw.png deleted file mode 100644 index a1de7b2..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/layouts/tilebottomw.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/layouts/tileleft.png b/awesome/.config/awesome/themes/mytheme/layouts/tileleft.png deleted file mode 100644 index 31d6870..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/layouts/tileleft.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/layouts/tileleftw.png b/awesome/.config/awesome/themes/mytheme/layouts/tileleftw.png deleted file mode 100644 index cf14c25..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/layouts/tileleftw.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/layouts/tiletop.png b/awesome/.config/awesome/themes/mytheme/layouts/tiletop.png deleted file mode 100644 index 98cade2..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/layouts/tiletop.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/layouts/tiletopw.png b/awesome/.config/awesome/themes/mytheme/layouts/tiletopw.png deleted file mode 100644 index d1d0872..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/layouts/tiletopw.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/layouts/tilew.png b/awesome/.config/awesome/themes/mytheme/layouts/tilew.png deleted file mode 100644 index fde2ca4..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/layouts/tilew.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/submenu.png b/awesome/.config/awesome/themes/mytheme/submenu.png deleted file mode 100644 index b2778e2..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/submenu.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/taglist/squarefw.png b/awesome/.config/awesome/themes/mytheme/taglist/squarefw.png deleted file mode 100644 index 2a86430..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/taglist/squarefw.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/taglist/squarew.png b/awesome/.config/awesome/themes/mytheme/taglist/squarew.png deleted file mode 100644 index 913f2ca..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/taglist/squarew.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/theme.lua b/awesome/.config/awesome/themes/mytheme/theme.lua deleted file mode 100644 index 31f1d38..0000000 --- a/awesome/.config/awesome/themes/mytheme/theme.lua +++ /dev/null @@ -1,137 +0,0 @@ ---------------------------- --- Default awesome theme -- ---------------------------- - --- TODO: border around mod-s and notifs - -local theme_assets = require("beautiful.theme_assets") -local xresources = require("beautiful.xresources") -local gears = require("gears") -local dpi = xresources.apply_dpi - -local gfs = require("gears.filesystem") -local themes_path = gfs.get_themes_dir() - -local theme = {} - -theme.font = "sans 7" -theme.master_width_factor = 8/13 - -theme.bg_normal = "#f5efdc" -theme.bg_focus = "#f5efdc" -theme.bg_urgent = "#f5efdc" -theme.bg_minimize = "#444444" -theme.bg_systray = theme.bg_normal - -theme.fg_normal = "#788e95" -theme.fg_focus = "#586e75" -theme.fg_urgent = "#dc322f" -theme.fg_minimize = "#ffffff" - -theme.useless_gap = dpi(5) -theme.border_width = dpi(0) -theme.border_normal = "#788e95" -theme.border_focus = "#586e75" -theme.border_marked = "#586e75" - -theme.notification_border_width = 1 - --- There are other variable sets --- overriding the default one when --- defined, the sets are: --- taglist_[bg|fg]_[focus|urgent|occupied|empty|volatile] --- tasklist_[bg|fg]_[focus|urgent] --- titlebar_[bg|fg]_[normal|focus] --- tooltip_[font|opacity|fg_color|bg_color|border_width|border_color] --- mouse_finder_[color|timeout|animate_timeout|radius|factor] --- prompt_[fg|bg|fg_cursor|bg_cursor|font] --- hotkeys_[bg|fg|border_width|border_color|shape|opacity|modifiers_fg|label_bg|label_fg|group_margin|font|description_font] --- Example: ---theme.taglist_bg_focus = "#ff0000" - --- 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 -) - --- Variables set for theming notifications: --- notification_font --- notification_[bg|fg] --- notification_[width|height|margin] --- notification_[border_color|border_width|shape|opacity] - --- Variables set for theming the menu: --- menu_[bg|fg]_[normal|focus] --- menu_[border_color|border_width] -theme.menu_submenu_icon = themes_path.."default/submenu.png" -theme.menu_height = dpi(15) -theme.menu_width = dpi(100) - --- You can add as many variables as --- you wish and access them by using --- beautiful.variable in your rc.lua ---theme.bg_widget = "#cc0000" - --- Define the image to load -theme.titlebar_close_button_normal = themes_path.."default/titlebar/close_normal.png" -theme.titlebar_close_button_focus = themes_path.."default/titlebar/close_focus.png" - -theme.titlebar_minimize_button_normal = themes_path.."default/titlebar/minimize_normal.png" -theme.titlebar_minimize_button_focus = themes_path.."default/titlebar/minimize_focus.png" - -theme.titlebar_ontop_button_normal_inactive = themes_path.."default/titlebar/ontop_normal_inactive.png" -theme.titlebar_ontop_button_focus_inactive = themes_path.."default/titlebar/ontop_focus_inactive.png" -theme.titlebar_ontop_button_normal_active = themes_path.."default/titlebar/ontop_normal_active.png" -theme.titlebar_ontop_button_focus_active = themes_path.."default/titlebar/ontop_focus_active.png" - -theme.titlebar_sticky_button_normal_inactive = themes_path.."default/titlebar/sticky_normal_inactive.png" -theme.titlebar_sticky_button_focus_inactive = themes_path.."default/titlebar/sticky_focus_inactive.png" -theme.titlebar_sticky_button_normal_active = themes_path.."default/titlebar/sticky_normal_active.png" -theme.titlebar_sticky_button_focus_active = themes_path.."default/titlebar/sticky_focus_active.png" - -theme.titlebar_floating_button_normal_inactive = themes_path.."default/titlebar/floating_normal_inactive.png" -theme.titlebar_floating_button_focus_inactive = themes_path.."default/titlebar/floating_focus_inactive.png" -theme.titlebar_floating_button_normal_active = themes_path.."default/titlebar/floating_normal_active.png" -theme.titlebar_floating_button_focus_active = themes_path.."default/titlebar/floating_focus_active.png" - -theme.titlebar_maximized_button_normal_inactive = themes_path.."default/titlebar/maximized_normal_inactive.png" -theme.titlebar_maximized_button_focus_inactive = themes_path.."default/titlebar/maximized_focus_inactive.png" -theme.titlebar_maximized_button_normal_active = themes_path.."default/titlebar/maximized_normal_active.png" -theme.titlebar_maximized_button_focus_active = themes_path.."default/titlebar/maximized_focus_active.png" - -gears.wallpaper.set("#f5efdc") - --- You can use your own layout icons like this: -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_magnifier = themes_path.."default/layouts/magnifierw.png" -theme.layout_max = themes_path.."default/layouts/maxw.png" -theme.layout_fullscreen = themes_path.."default/layouts/fullscreenw.png" -theme.layout_tilebottom = themes_path.."default/layouts/tilebottomw.png" -theme.layout_tileleft = themes_path.."default/layouts/tileleftw.png" -theme.layout_tile = themes_path.."default/layouts/tilew.png" -theme.layout_tiletop = themes_path.."default/layouts/tiletopw.png" -theme.layout_spiral = themes_path.."default/layouts/spiralw.png" -theme.layout_dwindle = themes_path.."default/layouts/dwindlew.png" -theme.layout_cornernw = themes_path.."default/layouts/cornernww.png" -theme.layout_cornerne = themes_path.."default/layouts/cornernew.png" -theme.layout_cornersw = themes_path.."default/layouts/cornersww.png" -theme.layout_cornerse = themes_path.."default/layouts/cornersew.png" - --- Generate Awesome icon: -theme.awesome_icon = theme_assets.awesome_icon( - theme.menu_height, theme.bg_focus, theme.fg_focus -) - --- 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/awesome/.config/awesome/themes/mytheme/titlebar/close_focus.png b/awesome/.config/awesome/themes/mytheme/titlebar/close_focus.png deleted file mode 100644 index 01ef825..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/titlebar/close_focus.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/titlebar/close_normal.png b/awesome/.config/awesome/themes/mytheme/titlebar/close_normal.png deleted file mode 100644 index 5448ed8..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/titlebar/close_normal.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/titlebar/floating_focus_active.png b/awesome/.config/awesome/themes/mytheme/titlebar/floating_focus_active.png deleted file mode 100644 index 82dcc7c..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/titlebar/floating_focus_active.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/titlebar/floating_focus_inactive.png b/awesome/.config/awesome/themes/mytheme/titlebar/floating_focus_inactive.png deleted file mode 100644 index c19ba80..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/titlebar/floating_focus_inactive.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/titlebar/floating_normal_active.png b/awesome/.config/awesome/themes/mytheme/titlebar/floating_normal_active.png deleted file mode 100644 index 62342d1..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/titlebar/floating_normal_active.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/titlebar/floating_normal_inactive.png b/awesome/.config/awesome/themes/mytheme/titlebar/floating_normal_inactive.png deleted file mode 100644 index e2bbdfa..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/titlebar/floating_normal_inactive.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/titlebar/maximized_focus_active.png b/awesome/.config/awesome/themes/mytheme/titlebar/maximized_focus_active.png deleted file mode 100644 index d7dffd7..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/titlebar/maximized_focus_active.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/titlebar/maximized_focus_inactive.png b/awesome/.config/awesome/themes/mytheme/titlebar/maximized_focus_inactive.png deleted file mode 100644 index 844389f..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/titlebar/maximized_focus_inactive.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/titlebar/maximized_normal_active.png b/awesome/.config/awesome/themes/mytheme/titlebar/maximized_normal_active.png deleted file mode 100644 index a705f81..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/titlebar/maximized_normal_active.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/titlebar/maximized_normal_inactive.png b/awesome/.config/awesome/themes/mytheme/titlebar/maximized_normal_inactive.png deleted file mode 100644 index 4c1ab1f..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/titlebar/maximized_normal_inactive.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/titlebar/minimize_focus.png b/awesome/.config/awesome/themes/mytheme/titlebar/minimize_focus.png deleted file mode 100644 index caaceb2..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/titlebar/minimize_focus.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/titlebar/minimize_normal.png b/awesome/.config/awesome/themes/mytheme/titlebar/minimize_normal.png deleted file mode 100644 index 36621d0..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/titlebar/minimize_normal.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/titlebar/ontop_focus_active.png b/awesome/.config/awesome/themes/mytheme/titlebar/ontop_focus_active.png deleted file mode 100644 index 312c00b..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/titlebar/ontop_focus_active.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/titlebar/ontop_focus_inactive.png b/awesome/.config/awesome/themes/mytheme/titlebar/ontop_focus_inactive.png deleted file mode 100644 index a48e1c5..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/titlebar/ontop_focus_inactive.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/titlebar/ontop_normal_active.png b/awesome/.config/awesome/themes/mytheme/titlebar/ontop_normal_active.png deleted file mode 100644 index 117a203..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/titlebar/ontop_normal_active.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/titlebar/ontop_normal_inactive.png b/awesome/.config/awesome/themes/mytheme/titlebar/ontop_normal_inactive.png deleted file mode 100644 index d3a10c8..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/titlebar/ontop_normal_inactive.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/titlebar/sticky_focus_active.png b/awesome/.config/awesome/themes/mytheme/titlebar/sticky_focus_active.png deleted file mode 100644 index 814499b..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/titlebar/sticky_focus_active.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/titlebar/sticky_focus_inactive.png b/awesome/.config/awesome/themes/mytheme/titlebar/sticky_focus_inactive.png deleted file mode 100644 index 21b000d..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/titlebar/sticky_focus_inactive.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/titlebar/sticky_normal_active.png b/awesome/.config/awesome/themes/mytheme/titlebar/sticky_normal_active.png deleted file mode 100644 index bdb5595..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/titlebar/sticky_normal_active.png and /dev/null differ diff --git a/awesome/.config/awesome/themes/mytheme/titlebar/sticky_normal_inactive.png b/awesome/.config/awesome/themes/mytheme/titlebar/sticky_normal_inactive.png deleted file mode 100644 index a96b9b1..0000000 Binary files a/awesome/.config/awesome/themes/mytheme/titlebar/sticky_normal_inactive.png and /dev/null differ diff --git a/awesome/.config/awesome/ui/README.org b/awesome/.config/awesome/ui/README.org deleted file mode 100644 index e049920..0000000 --- a/awesome/.config/awesome/ui/README.org +++ /dev/null @@ -1,4 +0,0 @@ -* AwesomeWM User Interface - -The files for the AwesomeWM User Interface is stored here, this contains system -panels and dashboards etc. diff --git a/awesome/.config/awesome/ui/init.lua b/awesome/.config/awesome/ui/init.lua deleted file mode 100644 index fdb2a48..0000000 --- a/awesome/.config/awesome/ui/init.lua +++ /dev/null @@ -1,58 +0,0 @@ -local awful = require('awful') -local top_panel = require('ui.top-panel') - --- Create a wibox for each screen and add it -awful.screen.connect_for_each_screen( - function(s) - - -- You can get edit/rid of this conditional if you want certain bars on specific screens or all screens etc. - if s.index == 1 then - - s.top_panel = top_panel(s) - - end - end -) - --- Hide bars when app go fullscreen -function updateBarsVisibility() - for s in screen do - if s.selected_tag then - local fullscreen = s.selected_tag.fullscreenMode - - -- These are the bars that are hidden when on any fullscreen mode (The awesomewm fullscreen mode and app fullscren modes like youtube) - -- If you want bars to be invisible when you fullscreen an app, you can do so like so : - s.top_panel.visible = not fullscreen - - -- If you want bars to be visible even when you fullscreen an app, you can do it like so : - -- s.top_panel.visible = visible - - -- I'm sure you can figure out other things you can do here - end - end -end - -_G.tag.connect_signal( - 'property::selected', - function(t) - updateBarsVisibility() - end -) - -_G.client.connect_signal( - 'property::fullscreen', - function(c) - c.screen.selected_tag.fullscreenMode = c.fullscreen - updateBarsVisibility() - end -) - -_G.client.connect_signal( - 'unmanage', - function(c) - if c.fullscreen then - c.screen.selected_tag.fullscreenMode = false - updateBarsVisibility() - end - end -) diff --git a/awesome/.config/awesome/ui/top-panel/init.lua b/awesome/.config/awesome/ui/top-panel/init.lua deleted file mode 100644 index 0c4de99..0000000 --- a/awesome/.config/awesome/ui/top-panel/init.lua +++ /dev/null @@ -1,60 +0,0 @@ -local awful = require('awful') -local beautiful = require('beautiful') -local wibox = require('wibox') -local gears = require('gears') - -configuration = require('configuration.config') -require('widgets.top-panel') - -local TopPanel = function(s) - - -- TODO: gap around bar - -- Wiboxes are much more flexible than wibars simply for the fact that there are no defaults, however if you'd rather have the ease of a wibar you can replace this with the original wibar code - local panel = - wibox( - { - ontop = true, - screen = s, - height = configuration.toppanel_height, - width = s.geometry.width, - x = s.geometry.x, - y = s.geometry.y, - stretch = false, - bg = beautiful.background, - fg = beautiful.fg_normal, - struts = { - top = configuration.toppanel_height - } - } - ) - - panel:struts( - { - top = configuration.toppanel_height - } - ) - -- - - panel:setup { - layout = wibox.layout.align.horizontal, - { -- Left widgets - layout = wibox.layout.fixed.horizontal, - s.mytaglist, - s.mypromptbox, - }, - { -- Middle Widgets - layout = wibox.layout.fixed.horizontal, - spacing = beautiful.wibar_spacing, - }, - { -- Right widgets - layout = wibox.layout.fixed.horizontal, - mytextclock, - }, - } - - - return panel -end - -return TopPanel - diff --git a/awesome/.config/awesome/widgets/README.org b/awesome/.config/awesome/widgets/README.org deleted file mode 100644 index a290863..0000000 --- a/awesome/.config/awesome/widgets/README.org +++ /dev/null @@ -1,4 +0,0 @@ -* AwesomeWM Widgets - -The files for AwesomeWM Widgets are stored here, these contain a variety of -things that are all placed onto wiboxes. diff --git a/awesome/.config/awesome/widgets/mainmenu.lua b/awesome/.config/awesome/widgets/mainmenu.lua deleted file mode 100644 index e874f46..0000000 --- a/awesome/.config/awesome/widgets/mainmenu.lua +++ /dev/null @@ -1,22 +0,0 @@ -local gears = require("gears") -local awful = require("awful") -local beautiful = require("beautiful") -local hotkeys_popup = require("awful.hotkeys_popup") -require("configuration.apps") - --- {{{ Menu --- Create a launcher widget and a main menu -myawesomemenu = { - { "hotkeys", function() hotkeys_popup.show_help(nil, awful.screen.focused()) end }, - { "manual", apps.terminal .. " -e man awesome" }, - { "edit config", apps.editor_cmd .. " " .. awesome.conffile }, - { "restart", awesome.restart }, - { "quit", function() awesome.quit() end }, -} - -mymainmenu = awful.menu({ items = { { "awesome", myawesomemenu, beautiful.awesome_icon }, - { "open terminal", apps.terminal } -} - }) - - diff --git a/awesome/.config/awesome/widgets/top-panel/init.lua b/awesome/.config/awesome/widgets/top-panel/init.lua deleted file mode 100644 index e140094..0000000 --- a/awesome/.config/awesome/widgets/top-panel/init.lua +++ /dev/null @@ -1,7 +0,0 @@ -require('widgets.top-panel.keyboardlayout') -require('widgets.top-panel.launcher') -require('widgets.top-panel.layoutbox') -require('widgets.top-panel.promptbox') -require('widgets.top-panel.taglist') -require('widgets.top-panel.tasklist') -require('widgets.top-panel.textclock') diff --git a/awesome/.config/awesome/widgets/top-panel/keyboardlayout.lua b/awesome/.config/awesome/widgets/top-panel/keyboardlayout.lua deleted file mode 100644 index ab214b6..0000000 --- a/awesome/.config/awesome/widgets/top-panel/keyboardlayout.lua +++ /dev/null @@ -1,5 +0,0 @@ -local wibox = require("wibox") -local awful = require("awful") - --- Keyboard map indicator and switcher -mykeyboardlayout = awful.widget.keyboardlayout() diff --git a/awesome/.config/awesome/widgets/top-panel/launcher.lua b/awesome/.config/awesome/widgets/top-panel/launcher.lua deleted file mode 100644 index 6a18be1..0000000 --- a/awesome/.config/awesome/widgets/top-panel/launcher.lua +++ /dev/null @@ -1,6 +0,0 @@ -local awful = require("awful") -local beautiful = require("beautiful") -require("widgets.mainmenu") - -mylauncher = awful.widget.launcher({ image = beautiful.awesome_icon, - menu = mymainmenu }) diff --git a/awesome/.config/awesome/widgets/top-panel/layoutbox.lua b/awesome/.config/awesome/widgets/top-panel/layoutbox.lua deleted file mode 100644 index 05fde9d..0000000 --- a/awesome/.config/awesome/widgets/top-panel/layoutbox.lua +++ /dev/null @@ -1,15 +0,0 @@ -local awful = require("awful") -local gears = require("gears") - - -awful.screen.connect_for_each_screen(function(s) - -- 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({ }, 1, function () awful.layout.inc( 1) end), - 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))) -end) - diff --git a/awesome/.config/awesome/widgets/top-panel/menubar.lua b/awesome/.config/awesome/widgets/top-panel/menubar.lua deleted file mode 100644 index 985ca6d..0000000 --- a/awesome/.config/awesome/widgets/top-panel/menubar.lua +++ /dev/null @@ -1,7 +0,0 @@ -local awful = require("awful") - --- Create a promptbox for each screen -awful.screen.connect_for_each_screen(function(s) - s.mymenubox = menubar -end) - diff --git a/awesome/.config/awesome/widgets/top-panel/promptbox.lua b/awesome/.config/awesome/widgets/top-panel/promptbox.lua deleted file mode 100644 index 4399c3e..0000000 --- a/awesome/.config/awesome/widgets/top-panel/promptbox.lua +++ /dev/null @@ -1,7 +0,0 @@ -local awful = require("awful") - --- Create a promptbox for each screen -awful.screen.connect_for_each_screen(function(s) - s.mypromptbox = awful.widget.prompt() -end) - diff --git a/awesome/.config/awesome/widgets/top-panel/taglist.lua b/awesome/.config/awesome/widgets/top-panel/taglist.lua deleted file mode 100644 index 9268204..0000000 --- a/awesome/.config/awesome/widgets/top-panel/taglist.lua +++ /dev/null @@ -1,33 +0,0 @@ -local awful = require("awful") -local gears = require("gears") - - --- Create a wibox for each screen and add it -local 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) -) - --- Create a promptbox for each screen --- This works, however it may be better to inherit the s variable from the top panel itself -awful.screen.connect_for_each_screen(function(s) - s.mytaglist = awful.widget.taglist { - screen = s, - filter = awful.widget.taglist.filter.all, - buttons = taglist_buttons - } - -end) - diff --git a/awesome/.config/awesome/widgets/top-panel/tasklist.lua b/awesome/.config/awesome/widgets/top-panel/tasklist.lua deleted file mode 100644 index b38b2cf..0000000 --- a/awesome/.config/awesome/widgets/top-panel/tasklist.lua +++ /dev/null @@ -1,34 +0,0 @@ -local awful = require("awful") -local gears = require("gears") - -local 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)) - --- Create a tasklist widget --- This works, however it may be better to inherit the s variable from the top panel itself -awful.screen.connect_for_each_screen(function(s) - s.mytasklist = awful.widget.tasklist { - screen = s, - filter = awful.widget.tasklist.filter.currenttags, - buttons = tasklist_buttons - } -end) diff --git a/awesome/.config/awesome/widgets/top-panel/textclock.lua b/awesome/.config/awesome/widgets/top-panel/textclock.lua deleted file mode 100644 index 7c6fd6f..0000000 --- a/awesome/.config/awesome/widgets/top-panel/textclock.lua +++ /dev/null @@ -1,4 +0,0 @@ -local wibox = require("wibox") - --- Create a textclock widget -mytextclock = wibox.widget.textclock() diff --git a/bash/.bashrc b/bash/.bashrc deleted file mode 100644 index 069c463..0000000 --- a/bash/.bashrc +++ /dev/null @@ -1,48 +0,0 @@ -# exit if not run interactively -[[ $- != *i* ]] && return - -shopt -s cdspell checkjobs extglob globstar histappend nocaseglob -HISTSIZE=50000 -HISTCONTROL=erasedups:ignorespace - -alias ..='cd ..' -alias cd..='cd ..' -alias htop='htop -t' -alias mkdir='mkdir -p' -alias rg='rg -S' -alias v='f -e nvim' - -t() { - case $1 in - u*) git -C ~/todo commit -am 'docs: update' && git -C ~/todo push ;; - p*) git -C ~/todo pull ;; - *) "$EDITOR" ~/todo/todo ;; - esac -} - -fmt() { - [ -f .clang-format ] && { - find src -type f -name '*.[ch]' -print | xargs -d '\n' clang-format -i "$@" - return - } - - [ -f Cargo.toml ] && { - cargo fmt "$@" - return - } -} - -__prompt() { - case $? in - 0) PS1='; ' ;; - *) PS1='\[\e[31m\]; \[\e[0m\]' ;; - esac -} -PROMPT_COMMAND="__prompt;$PROMPT_COMMAND" - -. "$HOME/.cargo/env" - -eval "$(direnv hook bash)" - -pgrep -u "$USER" -x ssh-agent >/dev/null || ssh-agent -t 5m >"$XDG_RUNTIME_DIR/ssh-agent.env" -[[ "$SSH_AUTH_SOCK" ]] || . "$XDG_RUNTIME_DIR/ssh-agent.env" >/dev/null diff --git a/bash/.config/readline/inputrc b/bash/.config/readline/inputrc deleted file mode 100644 index 236bfdd..0000000 --- a/bash/.config/readline/inputrc +++ /dev/null @@ -1 +0,0 @@ -set completion-ignore-case on diff --git a/direnv/.config/direnv/direnvrc b/direnv/.config/direnv/direnvrc deleted file mode 100644 index ee5fe03..0000000 --- a/direnv/.config/direnv/direnvrc +++ /dev/null @@ -1,151 +0,0 @@ -# Usage: use_nix [...] -# -# Load environment variables from `nix-shell`. -# If you have a `default.nix` or `shell.nix` one of these will be used and -# the derived environment will be stored at ./.direnv/env- -# and symlink to it will be created at ./.direnv/default. -# Dependencies are added to the GC roots, such that the environment remains persistent. -# -# The resulting environment is cached for better performance. -# -# To trigger switch to a different environment: -# `rm -f .direnv/default` -# -# To derive a new environment: -# `rm -rf .direnv/env-$(md5sum {shell,default}.nix 2> /dev/null | cut -c -32)` -# -# To remove cache: -# `rm -f .direnv/dump-*` -# -# To remove all environments: -# `rm -rf .direnv/env-*` -# -# To remove only old environments: -# `find .direnv -name 'env-*' -and -not -name `readlink .direnv/default` -exec rm -rf {} +` -# - -set -eo pipefail - -use_nix() { - # define all local variables - local shell f env_hash dir default wd drv dump path_backup - local files_to_watch=() - - declare opt - declare OPTARG - declare OPTIND - - while getopts ":s:w:" opt; do - case "${opt}" in - s) - shell="${OPTARG}" - files_to_watch=("${files_to_watch[@]}" "${shell}") - ;; - w) - files_to_watch=("${files_to_watch[@]}" "${OPTARG}") - ;; - :) - >&2 echo "Invalid option: $OPTARG requires an argument" - ;; - \?) - >&2 echo "Invalid option: $OPTARG" - exit 1 - ;; - esac - done - shift $((OPTIND -1)) - - if [[ -z "${shell}" ]]; then - >&2 echo "ERR: no shell was given" - exit 1 - fi - - for f in "${files_to_watch[@]}"; do - if ! [[ -f "${f}" ]]; then - >&2 echo "cannot watch file ${f} because it does not exist" - exit 1 - fi - done - - # compute the hash of all the files that makes up the development environment - env_hash="$(hashContents "${files_to_watch[@]}")" - - dir="$(direnv_layout_dir)" - default="${dir}/default" - if [[ ! -L "${default}" ]] || [[ ! -d $(readlink "${default}") ]]; then - wd="${dir}/env-${env_hash}" - mkdir -p "${wd}" - - drv="${wd}/env.drv" - if [[ ! -f "${drv}" ]]; then - log_status "use nix: deriving new environment" - IN_NIX_SHELL=1 nix-instantiate --add-root "${drv}" --indirect "${shell}" > /dev/null - nix-store -r $(nix-store --query --references "${drv}") --add-root "${wd}/dep" --indirect > /dev/null - fi - - rm -f "${default}" - ln -s $(basename "${wd}") "${default}" - fi - - drv=$(readlink "${default}/env.drv") - dump="${dir}/dump-$(hashFile ".envrc")-$(hashFile ${drv})" - - if [[ ! -f "${dump}" ]] || [[ "${XDG_CONFIG_DIR}/direnv/direnvrc" -nt "${dump}" ]]; then - log_status "use nix: updating cache" - - old=$(find "${dir}" -name 'dump-*') - nix-shell --pure "${drv}" --show-trace --run "$(join_args "$direnv" dump bash)" > "${dump}" - rm -f ${old} - fi - - # evaluate the dump created by nix-shell earlier, but have to merge the PATH - # with the current PATH - # NOTE: we eval the dump here as opposed to direnv_load it because we don't - # want to persist environment variables coming from the shell at the time of - # the dump. See https://github.com/direnv/direnv/issues/405 for context. - path_backup="${PATH}" - eval $(cat "${dump}") - export PATH="${PATH}:${path_backup}" - - for f in "${files_to_watch[@]}"; do - watch_file "${f}" - done -} - -hashContents() { - if has md5sum; then - cat "${@}" | md5sum | cut -c -32 - elif has md5; then - cat "${@}" | md5 -q - fi -} - -hashFile() { - if has md5sum; then - md5sum "${@}" | cut -c -32 - elif has md5; then - md5 -q "${@}" - fi -} - -fail() { - log_error "${@}" - exit 1 -} - -validateVersion() { - local version="$("${direnv}" version)" - local major="$(echo "${version}" | cut -d. -f1)" - local minor="$(echo "${version}" | cut -d. -f2)" - local patch="$(echo "${version}" | cut -d. -f3)" - - if [[ "${major}" -gt 2 ]]; then return 0; fi - if [[ "${major}" -eq 2 ]] && [[ "${minor}" -gt 18 ]]; then return 0; fi - if [[ "${major}" -eq 2 ]] && [[ "${minor}" -eq 18 ]] && [[ "${patch}" -ge 2 ]]; then return 0; fi - return 1 -} - -if ! validateVersion; then - echo "This .envrc requires direnv version 2.18.2 or above." - exit 1 -fi diff --git a/etc/Xorg/10disable-timeout.conf b/etc/Xorg/10disable-timeout.conf deleted file mode 100644 index 9416479..0000000 --- a/etc/Xorg/10disable-timeout.conf +++ /dev/null @@ -1,11 +0,0 @@ -Section "Monitor" - Identifier "monitor catchall" - Option "DPMS" "false" -EndSection - -Section "ServerFlags" - Option "StandbyTime" "0" - Option "SuspendTime" "0" - Option "OffTime" "0" - Option "BlankTime" "0" -EndSection diff --git a/etc/Xorg/20opengl.conf b/etc/Xorg/20opengl.conf deleted file mode 100644 index 582220f..0000000 --- a/etc/Xorg/20opengl.conf +++ /dev/null @@ -1,2 +0,0 @@ -Section "Files" -EndSection diff --git a/etc/Xorg/30trackpoint.conf b/etc/Xorg/30trackpoint.conf deleted file mode 100644 index a910202..0000000 --- a/etc/Xorg/30trackpoint.conf +++ /dev/null @@ -1,11 +0,0 @@ -Section "InputClass" - Identifier "Trackpoint Wheel Emulation" - Driver "evdev" - MatchProduct "TPPS/2 IBM TrackPoint" - MatchDevicePath "/dev/input/event*" - Option "EmulateWheel" "true" - Option "EmulateWheelButton" "2" - Option "Emulate3Buttons" "false" - Option "XAxisMapping" "6 7" - Option "YAxisMapping" "4 5" -EndSection diff --git a/etc/Xorg/40disable-trackpad.conf b/etc/Xorg/40disable-trackpad.conf deleted file mode 100644 index ad5d929..0000000 --- a/etc/Xorg/40disable-trackpad.conf +++ /dev/null @@ -1,6 +0,0 @@ -Section "InputClass" - Identifier "touchpad catchall" - Driver "evdev" - MatchIsTouchpad "on" - Option "Ignore" "on" -EndSection diff --git a/etc/portage/bashrc b/etc/portage/bashrc deleted file mode 100644 index c06daec..0000000 --- a/etc/portage/bashrc +++ /dev/null @@ -1,31 +0,0 @@ -declare -gA SNAPPER_PRE_SNAP_NUMS - -snapper_pre_snap() { - local desc="$1 ${CATEGORY}/${PF}" - local n="$(snapper -c root create -t pre -p -d "${desc}")" - SNAPPER_PRE_SNAP_NUMS["${desc}"]="${n}" -} - -snapper_post_snap() { - local desc="$1 ${CATEGORY}/${PF}" - local n="${SNAPPER_PRE_SNAP_NUMS["${desc}"]}" - snapper -c root create -t post --pre-number "${n}" -d "${desc}" -} - -pre_pkg_preinst() { - snapper_pre_snap install -} - -post_pkg_postinst() { - updatedb - snapper_post_snap install -} - -pre_pkg_prerm() { - snapper_pre_snap rm -} - -post_pkg_postrm() { - updatedb - snapper_post_snap rm -} diff --git a/fanya.nix b/fanya.nix new file mode 100644 index 0000000..6227793 --- /dev/null +++ b/fanya.nix @@ -0,0 +1,81 @@ +{ + pkgs, + home-manager, + ... +}: { + imports = [ + home-manager.nixosModule + ./impermanence.nix + ./programs + ./system.nix + ]; + + # TODO: setup phinger-cursors + + environment.systemPackages = with pkgs; [ + git + neovim + ]; + + fonts.fonts = with pkgs; [ + dejavu_fonts + go-font + noto-fonts + ]; + + home-manager.users.buffet = { + home.packages = with pkgs; [ + du-dust + gdb + github-cli + htop + kcachegrind + linuxPackages.perf + okular + radare2 + ripgrep + scc + strace + trash-cli + tree + valgrind + wget + wl-clipboard + ]; + + home.sessionVariables = { + BROWSER = "chromium"; + }; + + programs.direnv = { + enable = true; + enableBashIntegration = true; + }; + }; + + users.users.buffet = { + isNormalUser = true; + uid = 1000; + extraGroups = [ + "networkmanager" + "sway" + "wheel" + ]; + initialPassword = "foo"; + }; + + # TODO: borgbackup + hardware.bluetooth.enable = true; + virtualisation.libvirtd.enable = true; + systemd.coredump.enable = true; + + powerManagement = { + enable = true; + powertop.enable = true; + }; + + services = { + tlp.enable = true; + upower.enable = true; + }; +} diff --git a/flake.lock b/flake.lock new file mode 100644 index 0000000..1094b60 --- /dev/null +++ b/flake.lock @@ -0,0 +1,65 @@ +{ + "nodes": { + "home-manager": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1656169755, + "narHash": "sha256-Nlnm4jeQWEGjYrE6hxi/7HYHjBSZ/E0RtjCYifnNsWk=", + "owner": "nix-community", + "repo": "home-manager", + "rev": "4a3d01fb53f52ac83194081272795aa4612c2381", + "type": "github" + }, + "original": { + "owner": "nix-community", + "ref": "release-22.05", + "repo": "home-manager", + "type": "github" + } + }, + "impermanence": { + "locked": { + "lastModified": 1646131459, + "narHash": "sha256-GPmgxvUFvQ1GmsGfWHy9+rcxWrczeDhS9XnAIPHi9XQ=", + "owner": "nix-community", + "repo": "impermanence", + "rev": "2f39baeb7d039fda5fc8225111bb79474138e6f4", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "impermanence", + "type": "github" + } + }, + "nixpkgs": { + "locked": { + "lastModified": 1660120254, + "narHash": "sha256-EMBa86JQ6W0och5Kxb1XmprgN/HFsSuJ9fRa2PtV3uk=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e4c9d950a3c54a0760b127d406f6528eb625eed8", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-22.05", + "repo": "nixpkgs", + "type": "github" + } + }, + "root": { + "inputs": { + "home-manager": "home-manager", + "impermanence": "impermanence", + "nixpkgs": "nixpkgs" + } + } + }, + "root": "root", + "version": 7 +} diff --git a/flake.nix b/flake.nix new file mode 100644 index 0000000..651238c --- /dev/null +++ b/flake.nix @@ -0,0 +1,18 @@ +{ + inputs = { + home-manager = { + url = "github:nix-community/home-manager/release-22.05"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + impermanence.url = "github:nix-community/impermanence"; + nixpkgs.url = "github:NixOS/nixpkgs/nixos-22.05"; + }; + + outputs = {nixpkgs, ...} @ args: { + nixosConfigurations.fanya = nixpkgs.lib.nixosSystem { + system = "x86_64-linux"; + specialArgs = args; + modules = [./fanya.nix]; + }; + }; +} diff --git a/git/.config/git/config b/git/.config/git/config deleted file mode 100644 index 460722d..0000000 --- a/git/.config/git/config +++ /dev/null @@ -1,37 +0,0 @@ -[user] - email = dev@buffet.sh - name = buffet - -[init] - defaultBranch = master - -[core] - pager = delta - -[alias] - a = add - b = branch - c = commit --verbose - m = commit --amend --verbose - - d = diff - ds = diff --stat - dc = diff --cached - - s = status -s - co = checkout - cob = checkout -b - -[interactive] - diffFilter = delta --color-only - -[merge] - conflictstyle = diff3 - -[diff] - colorMoved = default - -[delta] - navigate = true - hyperlinks = true - syntax-theme = Solarized (light) diff --git a/gtk/.config/gtk-3.0/settings.ini b/gtk/.config/gtk-3.0/settings.ini deleted file mode 100644 index 07fad14..0000000 --- a/gtk/.config/gtk-3.0/settings.ini +++ /dev/null @@ -1,2 +0,0 @@ -[Settings] -gtk-cursor-theme-name=phinger-cursors-light diff --git a/hardware-configuration.nix b/hardware-configuration.nix new file mode 100644 index 0000000..89d5124 --- /dev/null +++ b/hardware-configuration.nix @@ -0,0 +1,56 @@ +# Do not modify this file! It was generated by ‘nixos-generate-config’ +# and may be overwritten by future invocations. Please make changes +# to /etc/nixos/configuration.nix instead. +{ + config, + lib, + pkgs, + modulesPath, + ... +}: { + imports = [ + (modulesPath + "/installer/scan/not-detected.nix") + ]; + + boot.initrd.availableKernelModules = ["xhci_pci" "ahci" "usb_storage" "sd_mod" "rtsx_pci_sdmmc"]; + boot.initrd.kernelModules = []; + boot.kernelModules = ["kvm-intel"]; + boot.extraModulePackages = []; + + fileSystems."/" = { + device = "/dev/disk/by-uuid/d2c87f01-cdb7-4871-ae9d-c3a843e1199d"; + fsType = "btrfs"; + options = ["subvol=@"]; + }; + + fileSystems."/persist" = { + device = "/dev/disk/by-uuid/d2c87f01-cdb7-4871-ae9d-c3a843e1199d"; + fsType = "btrfs"; + options = ["subvol=@persist"]; + }; + + fileSystems."/nix" = { + device = "/dev/disk/by-uuid/d2c87f01-cdb7-4871-ae9d-c3a843e1199d"; + fsType = "btrfs"; + options = ["subvol=@nix"]; + }; + + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/29E0-A9D9"; + fsType = "vfat"; + }; + + swapDevices = [ + {device = "/dev/disk/by-uuid/c7344d44-0e66-461d-ba99-a177a8efe982";} + ]; + + # Enables DHCP on each ethernet and wireless interface. In case of scripted networking + # (the default) this is the recommended approach. When using systemd-networkd it's + # still possible to use this option, but it's recommended to use it in conjunction + # with explicit per-interface declarations with `networking.interfaces..useDHCP`. + networking.useDHCP = lib.mkDefault true; + # networking.interfaces.enp0s25.useDHCP = lib.mkDefault true; + # networking.interfaces.wlp3s0.useDHCP = lib.mkDefault true; + + hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; +} diff --git a/icons/.icons/default/index.theme b/icons/.icons/default/index.theme deleted file mode 100644 index 4d8b5ee..0000000 --- a/icons/.icons/default/index.theme +++ /dev/null @@ -1,2 +0,0 @@ -[icon theme] -Inherits=phinger-cursors-light diff --git a/impermanence.nix b/impermanence.nix new file mode 100644 index 0000000..0e71fcc --- /dev/null +++ b/impermanence.nix @@ -0,0 +1,67 @@ +{ + config, + lib, + impermanence, + ... +}: { + imports = [ + "${impermanence}/nixos.nix" + ]; + + environment.persistence."/persist/system" = { + directories = [ + "/etc/NetworkManager/system-connections" + "/etc/nixos" + "/srv" + "/var/lib/bluetooth" + "/var/lib/machines" + "/var/log" + ]; + + files = []; + }; + + programs.fuse.userAllowOther = true; # required for allowOther + home-manager.users.buffet = { + imports = [ + "${impermanence}/home-manager.nix" + ]; + + home.persistence."/persist/buffet" = { + removePrefixDirectory = true; + allowOther = true; + + directories = [ + "data/books" + "data/docs" + "data/git" + "data/proj" + "data/reminders" + "data/rice" + "data/uni" + "ssh/.ssh" + "trash/.local/share/Trash" + ]; + + files = [ + "bash/.bash_history" + ]; + }; + }; + + fileSystems."/persist".neededForBoot = true; + + boot = { + supportedFilesystems = ["btrfs"]; + + # recreate the root subvolume at boot + initrd.postDeviceCommands = lib.mkBefore '' + echo "recreating root subvolume..." + mkdir -p /mnt + mount ${config.fileSystems."/".device} /mnt + btrfs subvolume delete /mnt/@ + btrfs subvolume create /mnt/@ + umount /mnt + ''; + }; +} diff --git a/nvim/.config/nvim/init.lua b/nvim/.config/nvim/init.lua deleted file mode 100644 index 7bae859..0000000 --- a/nvim/.config/nvim/init.lua +++ /dev/null @@ -1,6 +0,0 @@ -require 'keybinds' -require 'options' - -vim.defer_fn(function() - require 'plugins' -end, 0) diff --git a/nvim/.config/nvim/lua/keybinds.lua b/nvim/.config/nvim/lua/keybinds.lua deleted file mode 100644 index 755002e..0000000 --- a/nvim/.config/nvim/lua/keybinds.lua +++ /dev/null @@ -1,20 +0,0 @@ -vim.g.mapleader = ' ' - -vim.keymap.set('i', 'kj', '') - --- better defaults for indenting -vim.keymap.set('v', '<', '', '>gv') - --- telescope ---[[ -vim.keymap.set('n', 'f', 'Telescope find_files') -vim.keymap.set('n', 'r', 'Telescope live_grep') ---]] - --- lsp -vim.keymap.set('n', 'lr', 'Lspsaga rename', { silent = true }) ---vim.keymap.set('n', 'lg', 'Lspsaga ', { silent = true }) - --- misc -vim.keymap.set('n', 's', 'w', { silent = true }) diff --git a/nvim/.config/nvim/lua/options.lua b/nvim/.config/nvim/lua/options.lua deleted file mode 100644 index ced3098..0000000 --- a/nvim/.config/nvim/lua/options.lua +++ /dev/null @@ -1,44 +0,0 @@ -local function opts(os) - for k,v in pairs(os) do - vim.opt[k] = v - end -end - -opts { - termguicolors = true, - background = 'light', - - undodir = vim.env['XDG_CACHE_HOME'] .. '/vim-undodir', - undofile = true, - - encoding = 'utf-8', - hidden = true, - mouse = 'a', - hlsearch = true, - incsearch = true, - inccommand = 'nosplit', - ignorecase = true, - smartcase = true, - laststatus = 2, - lazyredraw = true, - splitbelow = true, - splitright = true, - matchtime = 2, - showmatch = true, - wrap = false, - writebackup = false, - swapfile = false, - showmode = false, - updatetime = 250, - signcolumn = 'yes', - shiftwidth = 4, - tabstop = 4, - shiftround = true, - autoindent = true, - smartindent = true, - expandtab = true, - - colorcolumn = '+1', - cursorline = true, - signcolumn = 'yes', -} diff --git a/nvim/.config/nvim/lua/plugins.lua b/nvim/.config/nvim/lua/plugins.lua deleted file mode 100644 index e84eec4..0000000 --- a/nvim/.config/nvim/lua/plugins.lua +++ /dev/null @@ -1,61 +0,0 @@ -local fn = vim.fn -local install_path = fn.stdpath('data')..'/site/pack/packer/start/packer.nvim' -if fn.empty(fn.glob(install_path)) > 0 then - packer_bootstrap = fn.system({'git', 'clone', '--depth', '1', 'https://github.com/wbthomason/packer.nvim', install_path}) -end - -return require('packer').startup(function() - use 'wbthomason/packer.nvim' - - use 'neovim/nvim-lspconfig' -- TODO: config? - - use { -- TODO: config - 'hrsh7th/nvim-cmp', - requires = { - 'hrsh7th/cmp-nvim-lsp', - }, - } - - use { - 'nvim-treesitter/nvim-treesitter', - run = ':TSUpdate', - requires = { - -- TODO :ts text-objects? - }, - config = function() - -- TODO: config - end, - } - - use { - 'nvim-telescope/telescope.nvim', - requires = { - 'nvim-lua/plenary.nvim', - 'nvim-lua/popup.nvim', - }, - } - - use { - 'overcache/NeoSolarized', - config = function() - - end, - } - - -- TODO: latex? - - -- TODO: vim-slash replacement - use 'editorconfig/editorconfig-vim' - --use 'folke/lsp-trouble.nvim' - use 'itchyny/lightline.vim' -- TODO: look into alternatives - --use 'roryokane/detectindent' - use 'tpope/vim-fugitive' - use 'tpope/vim-repeat' - -- vim surround? - -- gitsigns? - -- telescope - - if packer_bootstrap then - require('packer').sync() - end -end) diff --git a/picom/.config/picom.conf b/picom/.config/picom.conf deleted file mode 100644 index 5449dbd..0000000 --- a/picom/.config/picom.conf +++ /dev/null @@ -1,63 +0,0 @@ -# Dim -inactive-dim = 0.03; -inactive-dim-fixed = true; - -# Fading -fading = true; -fade-delta = 1.8; -fade-in-step = 0.03; -fade-out-step = 0.03; - -# Other -backend = "glx"; -mark-wmwin-focused = true; -mark-ovredir-focused = true; -# use-ewmh-active-win = true; -detect-rounded-corners = true; -detect-client-opacity = true; -refresh-rate = 0; -vsync = true; -# sw-opti = true; -unredir-if-possible = false; -# unredir-if-possible-delay = 5000; -# unredir-if-possible-exclude = [ ]; -# focus-exclude = [ "class_g = 'Cairo-clock'" ]; - -focus-exclude = [ - "class_g = 'Cairo-clock'", - "class_g ?= 'rofi'", - "class_g ?= 'slop'", - "class_g ?= 'Steam'" -]; - - -detect-transient = true; -detect-client-leader = true; -invert-color-include = [ ]; -# resize-damage = 1; - -# GLX backend - -glx-no-stencil = true; -# glx-no-rebind-pixmap = true; -# xrender-sync-fence = true; -use-damage = true; - -# Window type settings - -wintypes: -{ - tooltip = { fade = true; shadow = false; focus = false; }; - normal = { shadow = false; }; - dock = { shadow = false; }; - dnd = { shadow = false; }; - popup_menu = { shadow = true; focus = false; opacity = 0.90; }; - dropdown_menu = { shadow = false; focus = false; }; - above = { shadow = true; }; - splash = { shadow = false; }; - utility = { focus = false; shadow = false; }; - notification = { shadow = false; }; - desktop = { shadow = true }; - menu = { focus = false }; - dialog = { shadow = true; }; -}; diff --git a/profile/.profile b/profile/.profile deleted file mode 100644 index 5f1097a..0000000 --- a/profile/.profile +++ /dev/null @@ -1,20 +0,0 @@ -[ "$READPROFILE" ] && return - -. /etc/profile || true - -export READPROFILE=1 - -export XDG_CONFIG_HOME="$HOME/.config" -export XDG_CACHE_HOME="$HOME/.cache" -export XDG_DATA_DIR="$HOME/.local/share" - -export INPUTRC="$XDG_CONFIG_HOME/readline/inputrc" -export LESSHISTFILE="$XDG_CACHE_HOME/less_history" -export HISTFILE="$XDG_CACHE_HOME/bash_history" - -export BROWSER=chromium -export EDITOR=nvim - -[ -f "$HOME/.cargo/env" ] && . "$HOME/.cargo/env" - -if [ -e /home/buffet/.nix-profile/etc/profile.d/nix.sh ]; then . /home/buffet/.nix-profile/etc/profile.d/nix.sh; fi # added by Nix installer diff --git a/programs/alacritty.nix b/programs/alacritty.nix new file mode 100644 index 0000000..66ec546 --- /dev/null +++ b/programs/alacritty.nix @@ -0,0 +1,53 @@ +_: { + home-manager.users.buffet = { + programs.alacritty = { + enable = true; + + settings = { + window.padding = { + x = 8; + y = 8; + }; + + font = with import ../theme.nix; { + inherit (font) size; + normal = { + inherit (font) family; + style = "Regular"; + }; + bold = { + inherit (font) family; + style = "Bold"; + }; + italic = { + inherit (font) family; + style = "Italic"; + }; + bold_italic = { + inherit (font) family; + style = "Bold Italic"; + }; + }; + + colors = with import ../theme.nix; { + primary = { + inherit (primary) background foreground; + }; + + cursor = { + cursor = cursor.background; + text = cursor.foreground; + }; + + normal = { + inherit (normal) black red green yellow blue magenta cyan white; + }; + + bright = { + inherit (bright) black red green yellow blue magenta cyan white; + }; + }; + }; + }; + }; +} diff --git a/programs/bash.nix b/programs/bash.nix new file mode 100644 index 0000000..8a8fb5f --- /dev/null +++ b/programs/bash.nix @@ -0,0 +1,42 @@ +{pkgs, ...}: let + inputrc = pkgs.writeText "inputrc" '' + set completion-ignore-case on + ''; +in { + home-manager.users.buffet = { + home.sessionVariables = { + INPUTRC = inputrc; + }; + + programs.bash = { + enable = true; + historyControl = ["erasedups" "ignorespace"]; + + shellAliases = { + "cd.." = "cd .."; + htop = "htop -t"; + mkdir = "mkdir -p"; + rg = "rg -S"; + }; + + shellOptions = [ + "cdspell" + "checkjobs" + "extglob" + "globstar" + "histappend" + "nocaseglob" + ]; + + initExtra = '' + __prompt() { + case $? in + 0) PS1='; ' ;; + *) PS1='\[\e[31m\]; \[\e[0m\]' ;; + esac + } + PROMPT_COMMAND="__prompt" + ''; + }; + }; +} diff --git a/programs/chromium.nix b/programs/chromium.nix new file mode 100644 index 0000000..bbd3450 --- /dev/null +++ b/programs/chromium.nix @@ -0,0 +1,15 @@ +_: { + nixpkgs.config.chromium.commandLineArgs = "--enable-features=UseOzonePlatform --ozone-platform=wayland"; + + home-manager.users.buffet = { + programs.chromium = { + enable = true; + extensions = [ + {id = "nngceckbapebfimnlniiiahkandclblb";} # Bitwarden + {id = "gcbommkclmclpchllfjekcdonpmejbdp";} # HTTPS Everywhere + {id = "hlepfoohegkhhmjieoechaddaejaokhf";} # Refined GitHub + {id = "cjpalhdlnbpafiamejdnhcphjbkeiagm";} # uBlock Origin + ]; + }; + }; +} diff --git a/programs/default.nix b/programs/default.nix new file mode 100644 index 0000000..ad887ab --- /dev/null +++ b/programs/default.nix @@ -0,0 +1,12 @@ +{...}: { + imports = [ + ./alacritty.nix + ./bash.nix + ./chromium.nix + ./git.nix + ./mako.nix + ./nvim.nix + ./pipewire.nix + ./sway.nix + ]; +} diff --git a/programs/git.nix b/programs/git.nix new file mode 100644 index 0000000..08ab2b6 --- /dev/null +++ b/programs/git.nix @@ -0,0 +1,37 @@ +_: { + home-manager.users.buffet = { + programs.git = { + enable = true; + userEmail = "dev@buffet.sh"; + userName = "buffet"; + difftastic = { + enable = true; + background = + if (import ../theme.nix).light + then "light" + else "dark"; + }; + + aliases = { + a = "add"; + b = "branch"; + c = "commit --verbose"; + m = "commit --amend --verbose"; + + d = "diff"; + ds = "diff --stat"; + dc = "diff --cached"; + + s = "status -s"; + co = "checkout"; + cob = "checkout -b"; + }; + + extraConfig = { + init = { + defaultBranch = "master"; + }; + }; + }; + }; +} diff --git a/programs/mako.nix b/programs/mako.nix new file mode 100644 index 0000000..d2f3c33 --- /dev/null +++ b/programs/mako.nix @@ -0,0 +1,23 @@ +{pkgs, ...}: { + home-manager.users.buffet = { + home.packages = [pkgs.libnotify]; # TODO: is this required? + + programs.mako = let + colors = import ../theme.nix; + in { + enable = true; + + anchor = "top-right"; + + backgroundColor = colors.primary.background; + borderColor = colors.wm.focused.border; + progressColor = colors.primary.foreground; + textColor = colors.primary.foreground; + borderSize = 1; + + defaultTimeout = 4000; + + font = with import ../theme.nix; "${font.family} ${toString font.size}"; + }; + }; +} diff --git a/programs/nvim.nix b/programs/nvim.nix new file mode 100644 index 0000000..d5f6fca --- /dev/null +++ b/programs/nvim.nix @@ -0,0 +1,89 @@ +{pkgs, ...}: { + home-manager.users.buffet = { + home.sessionVariables = { + EDITOR = "nvim"; + }; + + # TODO: keybinds + # TODO: looks + # TODO: options + programs.neovim = { + enable = true; + plugins = with pkgs.vimPlugins; [ + # TODO: vimplugin lsp-trouble + # TODO: vimplugin nvim-lspconfig + {plugin = editorconfig-nvim;} + {plugin = fugitive;} + {plugin = nvim-autopairs;} + {plugin = rust-vim;} + {plugin = tabular;} + {plugin = vim-nix;} + {plugin = vim-repeat;} + {plugin = vimwiki;} + + { + plugin = gitsigns-nvim; + config = "lua gitsigns.setup()"; + } + + { + plugin = lightline-vim; + config = "let g:lightline = { 'colorscheme': 'solarized' }"; + } + + { + plugin = lspsaga-nvim; + # TODO: lspsaga config + } + + { + plugin = NeoSolarized; + config = '' + set background=light + colorscheme NeoSolarized + ''; + } + + { + plugin = nvim-lspconfig; + # TODO: lspconfig config + } + + { + plugin = telescope-nvim; + # TODO: telescope-nvim config + } + + { + plugin = nvim-treesitter.withPlugins (plugins: + with plugins; [ + tree-sitter-bash + tree-sitter-bibtex + tree-sitter-c + tree-sitter-cmake + tree-sitter-comment + tree-sitter-cpp + tree-sitter-css + tree-sitter-devicetree + tree-sitter-dockerfile + tree-sitter-fennel + tree-sitter-go + tree-sitter-javascript + tree-sitter-json + tree-sitter-latex + tree-sitter-lua + tree-sitter-make + tree-sitter-markdown + tree-sitter-nix + tree-sitter-perl + tree-sitter-python + tree-sitter-regex + tree-sitter-rust + tree-sitter-toml + ]); + } + # TODO: tree-sitter config + ]; + }; + }; +} diff --git a/programs/pipewire.nix b/programs/pipewire.nix new file mode 100644 index 0000000..2c197ad --- /dev/null +++ b/programs/pipewire.nix @@ -0,0 +1,8 @@ +_: { + security.rtkit.enable = true; + services.pipewire = { + enable = true; + alsa.enable = true; + pulse.enable = true; + }; +} diff --git a/programs/sway.nix b/programs/sway.nix new file mode 100644 index 0000000..8933bcc --- /dev/null +++ b/programs/sway.nix @@ -0,0 +1,180 @@ +{ + pkgs, + lib, + ... +}: { + programs.sway.enable = true; + + home-manager.users.buffet = { + wayland.windowManager.sway = { + enable = true; + wrapperFeatures.gtk = true; + xwayland = false; + + config = let + browser = "firefox"; + mod = "Mod4"; + terminal = "alacritty"; + colors = import ../theme.nix; + + makeWorkspaceBinds = num: let + ws = toString num; + in { + "${mod}+${ws}" = "workspace ${ws}"; + "${mod}+Shift+${ws}" = "move container to workspace ${ws}"; + }; + + joinAttrSets = builtins.foldl' (x: y: x // y) {}; + + statusCommand = pkgs.writeScript "status_command" '' + #!/bin/sh + + while :; do + energy_full= + energy_now= + charge= + + for bat in /sys/class/power_supply/*/capacity; do + bat="''${bat%/*}" + read -r full < $bat/energy_full + read -r now < $bat/energy_now + energy_full=$((energy_full + full)) + energy_now=$((energy_now + now)) + done + + if cat /sys/class/power_supply/*/status | grep -q Charging; then + charge=+ + fi + + printf '%s %s ' "$charge$((energy_now * 100 / energy_full))%" "$(date +'%H:%M')" + + sleep 3 + done + ''; + in { + modifier = mod; + window.border = 1; + focus.followMouse = true; + fonts = { + names = [colors.font.family]; + style = "Regular"; + size = colors.font.size * 1.0; + }; + + gaps = { + inner = 5; + outer = 0; + }; + + input."*" = {xkb_options = "compose:ralt";}; + output."*" = {bg = "${colors.primary.background} solid_color";}; + + colors = with colors; rec { + focused = rec { + inherit (wm.focused) border text; + inherit (primary) background; + indicator = border; + childBorder = border; + }; + + unfocused = rec { + inherit (wm.unfocused) border text; + inherit (primary) background; + indicator = border; + childBorder = border; + }; + + focusedInactive = unfocused; + }; + + keybindings = + { + "${mod}+Shift+c" = "kill"; + "${mod}+Control+r" = "reload"; + "${mod}+Shift+e" = "exit"; + + "${mod}+Shift+Return" = "exec ${terminal}"; + "${mod}+i" = "exec ${browser}"; + "${mod}+Shift+y" = "exec ${pkgs.swaylock}/bin/swaylock -ec '${colors.primary.background}'"; + "${mod}+z" = "exec ${pkgs.brightnessctl}/bin/brightnessctl s 1%-"; + "${mod}+x" = "exec ${pkgs.brightnessctl}/bin/brightnessctl s 1%+"; + "${mod}+Shift+z" = "exec ${pkgs.brightnessctl}/bin/brightnessctl s 5%-"; + "${mod}+Shift+x" = "exec ${pkgs.brightnessctl}/bin/brightnessctl s 5%+"; + + # TODO: saner screenshot keybinds + "${mod}+p" = "exec ${pkgs.sway-contrib.grimshot}/bin/grimshot copy active"; + "${mod}+Shift+p" = "exec ${pkgs.sway-contrib.grimshot}/bin/grimshot copy area"; + "${mod}+Alt+p" = "exec ${pkgs.sway-contrib.grimshot}/bin/grimshot copy output"; + "${mod}+Ctrl+p" = "exec ${pkgs.sway-contrib.grimshot}/bin/grimshot copy window"; + + "${mod}+o" = "splith"; + "${mod}+u" = "splitv"; + + "${mod}+s" = "layout stacking"; + "${mod}+t" = "layout tabbed"; + "${mod}+e" = "layout toggle split"; + "${mod}+f" = "fullscreen"; + + "${mod}+h" = "focus left"; + "${mod}+j" = "focus down"; + "${mod}+k" = "focus up"; + "${mod}+l" = "focus right"; + + "${mod}+Left" = "focus left"; + "${mod}+Down" = "focus down"; + "${mod}+Up" = "focus up"; + "${mod}+Right" = "focus right"; + + "${mod}+Shift+h" = "move left"; + "${mod}+Shift+j" = "move down"; + "${mod}+Shift+k" = "move up"; + "${mod}+Shift+l" = "move right"; + + "${mod}+Ctrl+h" = "resize grow left 10 px or 10 ppt"; + "${mod}+Ctrl+j" = "resize grow down 10 px or 10 ppt"; + "${mod}+Ctrl+k" = "resize grow up 10 px or 10 ppt"; + "${mod}+Ctrl+l" = "resize grow right 10 px or 10 ppt"; + + "${mod}+space" = "focus mode_toggle"; + "${mod}+a" = "focus parent"; + + "${mod}+Shift+space" = "floating toggle"; + } + // (joinAttrSets (map makeWorkspaceBinds (lib.range 1 9))); + + bars = [ + { + position = "top"; + fonts = { + names = [colors.font.family]; + style = "Regular"; + size = colors.font.size * 1.0; + }; + statusCommand = "${statusCommand}"; + + colors = with colors; { + statusline = primary.foreground; + inherit (primary) background; + + focusedWorkspace = { + inherit (primary) background; + inherit (wm.focused) text; + inherit (wm.unfocused) border; + }; + + inactiveWorkspace = { + inherit (primary) background; + inherit (wm.unfocused) text; + border = primary.background; + }; + }; + + extraConfig = '' + gaps 5 + ''; + } + ]; + }; + }; + }; +} diff --git a/system.nix b/system.nix new file mode 100644 index 0000000..2bded99 --- /dev/null +++ b/system.nix @@ -0,0 +1,51 @@ +{nixpkgs, ...}: { + imports = [ + ./hardware-configuration.nix + ]; + + # Don't change! + system.stateVersion = "22.05"; + home-manager.users.buffet.home.stateVersion = "22.05"; + + time.timeZone = "UTC"; + i18n.defaultLocale = "en_US.UTF-8"; + + boot.tmpOnTmpfs = true; + boot.loader = { + systemd-boot.enable = true; + efi.canTouchEfiVariables = true; + }; + + fileSystems = { + "/".options = ["compress=zstd"]; + "/nix".options = ["compress=zstd" "noatime"]; + "/persist".options = ["compress=zstd"]; + }; + + networking = { + useDHCP = false; + interfaces = { + enp0s25.useDHCP = true; + wlp3s0.useDHCP = true; + }; + hostName = "fanya"; + networkmanager.enable = true; + nameservers = ["1.1.1.1"]; + }; + + nix = { + autoOptimiseStore = true; + trustedUsers = ["root" "buffet"]; + registry.nixpkgs.flake = nixpkgs; + + gc = { + automatic = true; + dates = "weekly"; + options = "--delete-older-than 14d"; + }; + + extraOptions = '' + experimental-features = nix-command flakes + ''; + }; +} diff --git a/theme.nix b/theme.nix new file mode 100644 index 0000000..2dc4a97 --- /dev/null +++ b/theme.nix @@ -0,0 +1,52 @@ +{ + light = true; + + font = { + family = "GoMono"; + size = 8; + }; + + primary = { + background = "#fdf6e3"; + foreground = "#586e75"; + }; + + cursor = { + background = "#586e75"; + foreground = "#fdf6e3"; + }; + + normal = { + black = "#073642"; + red = "#dc322f"; + green = "#859900"; + yellow = "#b58900"; + blue = "#268bd2"; + magenta = "#d33682"; + cyan = "#2aa198"; + white = "#eee8d5"; + }; + + bright = { + black = "#002b36"; + red = "#cb4b16"; + green = "#586e75"; + yellow = "#657b83"; + blue = "#839496"; + magenta = "#6c71c4"; + cyan = "#93a1a1"; + white = "#fdf6e3"; + }; + + wm = { + focused = { + text = "#586e75"; + border = "#b8ced5"; + }; + + unfocused = { + text = "#788e95"; + border = "#ddd6c3"; + }; + }; +} diff --git a/xinit/.xinitrc b/xinit/.xinitrc deleted file mode 100755 index b47b38e..0000000 --- a/xinit/.xinitrc +++ /dev/null @@ -1,3 +0,0 @@ -picom -b -setxkbmap -option compose:ralt -exec dbus-launch --exit-with-session awesome