From 122dd688a6b7a939317def450ed6c42b326d76cd Mon Sep 17 00:00:00 2001 From: Daniel Flanagan Date: Sat, 24 Oct 2020 21:48:02 -0500 Subject: [PATCH] Cleaning, wrapping up base nix config --- apps/config | 18 -- apps/de/bspwm/config | 52 ----- apps/de/bspwm/rc | 20 -- apps/de/bspwm/wallpapers | 2 - apps/de/bspwm/wmstart | 3 - apps/de/compton/compton.conf | 59 ------ apps/de/dunst/rc | 312 ----------------------------- apps/de/libinput/touchpad.conf | 9 - apps/de/sway/init | 34 ---- apps/de/sxhkd/rc | 266 ------------------------ apps/de/x/init | 14 -- apps/de/x/loadresources | 23 --- apps/de/x/modmap | 7 - apps/de/x/profile | 20 -- apps/de/x/resources | 100 --------- apps/shell/fish/aliases.fish | 2 +- apps/udev-rules/lowbat | 2 - apps/udev-rules/usb-device-plugin | 1 - apps/udev-rules/wifi-powersave | 1 - bin/lib/sudo_setup | 10 - env/desktop/gitconfig | 6 - env/desktop/x/resources | 8 - env/laptop/gitconfig | 6 - env/laptop/polybar | 9 - env/laptop/vim | 0 env/laptop/x/docked.resources | 7 - env/laptop/x/games.resources | 7 - env/laptop/x/home.docked.resources | 4 - env/laptop/x/profile | 3 - env/laptop/x/resources | 21 -- env/nix/machines/third.nix | 18 +- env/nix/modules/de/base.nix | 4 + env/nix/modules/de/sway.nix | 61 ++++-- env/nix/modules/intel.nix | 15 +- env/nix/modules/users/daniel.nix | 1 + env/nix/profiles/base.nix | 24 +++ 36 files changed, 102 insertions(+), 1047 deletions(-) delete mode 100644 apps/config delete mode 100755 apps/de/bspwm/config delete mode 100755 apps/de/bspwm/rc delete mode 100755 apps/de/bspwm/wallpapers delete mode 100755 apps/de/bspwm/wmstart delete mode 100644 apps/de/compton/compton.conf delete mode 100644 apps/de/dunst/rc delete mode 100644 apps/de/libinput/touchpad.conf delete mode 100755 apps/de/sway/init delete mode 100755 apps/de/sxhkd/rc delete mode 100644 apps/de/x/init delete mode 100755 apps/de/x/loadresources delete mode 100644 apps/de/x/modmap delete mode 100755 apps/de/x/profile delete mode 100755 apps/de/x/resources delete mode 100644 apps/udev-rules/lowbat delete mode 100644 apps/udev-rules/usb-device-plugin delete mode 100644 apps/udev-rules/wifi-powersave delete mode 100644 env/desktop/gitconfig delete mode 100755 env/desktop/x/resources delete mode 100644 env/laptop/gitconfig delete mode 100755 env/laptop/polybar delete mode 100755 env/laptop/vim delete mode 100755 env/laptop/x/docked.resources delete mode 100644 env/laptop/x/games.resources delete mode 100644 env/laptop/x/home.docked.resources delete mode 100755 env/laptop/x/profile delete mode 100755 env/laptop/x/resources diff --git a/apps/config b/apps/config deleted file mode 100644 index cf91234..0000000 --- a/apps/config +++ /dev/null @@ -1,18 +0,0 @@ - -;; Added by Package.el. This must come before configurations of -;; installed packages. Don't delete this line. If you don't want it, -;; just comment it out by adding a semicolon to the start of the line. -;; You may delete these explanatory comments. - -;; jk - -(require 'package) -(add-to-list 'package-archives '("org" . "https://orgmode.org/elpa/")) -(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/")) -(add-to-list 'package-archives '("melpa-stable" . "https://stable.melpa.org/packages/")) -(package-initialize) - -;; Given all of this, just `package-refresh-contents` - -(require 'evil) -(evil-mode 5) diff --git a/apps/de/bspwm/config b/apps/de/bspwm/config deleted file mode 100755 index e6a54a9..0000000 --- a/apps/de/bspwm/config +++ /dev/null @@ -1,52 +0,0 @@ -#!/usr/bin/env sh - -NUM_DESKTOPS="$(xrq bspwm.num_desktops || echo '10')" -REVERSE_DESKTOP_ORDERING="$(xrq bspwm.reverse_desktop_ordering)" -REVERSE_MONITOR_DESKTOPS="$(xrq bspwm.reverse_monitor_desktops)" -BSPWM_MONITORS=$(bspc query -M) -MONITOR_COUNT=$(echo "$BSPWM_MONITORS" | wc -w | awk '{ printf $1 }') -PER_MONITOR="$(xrq bspwm.num_desktops_per_monitor || echo $((NUM_DESKTOPS / MONITOR_COUNT)))" -DESKTOPS=$(seq "$NUM_DESKTOPS") - -[ "$REVERSE_MONITOR_DESKTOPS" -eq 1 ] && BSPWM_MONITORS=$(echo "$BSPWM_MONITORS" | tac) - -bspc config normal_border_color "$(xrq bspwm.normal_border_color)" -bspc config focused_border_color "$(xrq bspwm.focused_border_color)" -bspc config active_border_color "$(xrq bspwm.active_border_color)" -bspc config presel_feedback_color "$(xrq bspwm.presel_feedback_color)" -bspc config border_width "$(xrq bspwm.border_width)" -bspc config split_ratio "$(xrq bspwm.split_ratio)" -bspc config window_gap "$(xrq bspwm.window_gap)" -bspc config borderless_monocle true -bspc config gapless_monocle true -bspc config pointer_modifier "mod4" -bspc config remove_unplugged_monitors true -bspc config remove_disabled_monitors true - -bspc rule -a "*" split_dir=right - -i=1 -total_screens=0 -for mon in $BSPWM_MONITORS; do - max=$((i + PER_MONITOR - 1)) - screens="" - for j in $(seq $i $max); do - [[ "$total_screens" -ge "$NUM_DESKTOPS" ]] || screens="${screens}${j} " - total_screens=$((total_screens+1)) - echo $NUM_DESKTOPS $total_screens $screens - done - bspc monitor "$mon" -d $screens - i=$((max + 1)) -done - -if [ "$REVERSE_DESKTOP_ORDERING" -eq 1 ]; then - prev_mon= - for mon in ${BSPWM_MONITORS}; do - if [ ! -z $prev_mon ]; then - bspc monitor "$mon" --swap "$prev_mon" - fi - prev_mon="$mon" - done -fi - -. maybe_source_env_file bspwm-after diff --git a/apps/de/bspwm/rc b/apps/de/bspwm/rc deleted file mode 100755 index f586483..0000000 --- a/apps/de/bspwm/rc +++ /dev/null @@ -1,20 +0,0 @@ -#!/usr/bin/env sh - -# . "$DOTFILES_PATH/apps/de/x/profile" - -BAR_COMMAND="startbar" -BSPWM_STATE_FILE="$HOME/.bspwm_state" - -[ -e "$BSPWM_STATE" ] && bspc wm -l "$BSPWM_STATE" && rm "$BSPWM_STATE" - -. "$DOTFILES_PATH/apps/de/bspwm/config" - -[ -f "$HOME/.fehbg" ] && "$HOME/.fehbg" & -[ "$(xrq bspwm.start_compton)" -eq 1 ] && has_command compton && compton & -[ "$(xrq bspwm.start_bar)" -eq 1 ] && has_command "${BAR_COMMAND}" && "${BAR_COMMAND}" & -has_command urxvtd && urxvtd & -has_command dunst && dunst & -has_command sxhkd && sxhkd -m -1 & -has_command unclutter && unclutter & - -bspc wm -o diff --git a/apps/de/bspwm/wallpapers b/apps/de/bspwm/wallpapers deleted file mode 100755 index be8102e..0000000 --- a/apps/de/bspwm/wallpapers +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/sh -feh --no-fehbg --bg-fill '/home/daniel/.home/../img/walls/530895_souredapple_clouds.png' diff --git a/apps/de/bspwm/wmstart b/apps/de/bspwm/wmstart deleted file mode 100755 index 5f68f09..0000000 --- a/apps/de/bspwm/wmstart +++ /dev/null @@ -1,3 +0,0 @@ -#!/usr/bin/env bash - -bspwm diff --git a/apps/de/compton/compton.conf b/apps/de/compton/compton.conf deleted file mode 100644 index 224a379..0000000 --- a/apps/de/compton/compton.conf +++ /dev/null @@ -1,59 +0,0 @@ -shadow = true; -clearshadow = true; -shadow-radius = 20; -shadow-offset-x = -20; -shadow-offset-y = -15; -shadow-opacity = 0.5; -shadow-red = 0.0; -shadow-green = 0.0; -shadow-blue = 0.0; -shadow-ignore-shaped = false; - -inactive-opacity = 1.0; -active-opacity = 1.0; -frame-opacity = 1.0; -inactive-opacity-override = false; - -fading = false; -fade-in-step = 0.06; -fade-out-step = 0.06; -inactive-dim = 0.0; - -focus-exclude = [ "n:e:rofi" ] - -mark-wmwin-focused = true; -mark-ovredir-focused = false; -detect-rounded-corners = true; -detect-client-opacity = false; - -backend = "glx"; -vsync = true; -refresh-rate = 100; -glx-no-stencil = true; -glx-no-rebind-pixmap = true; -glx-copy-from-front = false; -xrender-sync-fence = true; -use-damage = true; - -dbe = false; -detect-transient = true; -detect-client-leader = true; -invert-color-include = [ ]; - -blur-background = true; -blur-background-frame = true; -blur-background-fixed = true; - -blur-kern = "3x3box"; -blur-method = "kawase"; -blur-strength = "50"; - -opacity-rule - -wintypes : -{ - tooltip : { fade = false; shadow = false; opacity = 1.0; }; - dock : { fade = false; opacity = 1.0; }; - dnd : { fade = false; shadow = false; opacity = 1.0; }; -}; - diff --git a/apps/de/dunst/rc b/apps/de/dunst/rc deleted file mode 100644 index 046f711..0000000 --- a/apps/de/dunst/rc +++ /dev/null @@ -1,312 +0,0 @@ -[global] - monitor = 0 - follow = keyboard - - # The geometry of the window: - # [{width}]x{height}[+/-{x}+/-{y}] - # The geometry of the message window. - # The height is measured in number of notifications everything else - # in pixels. If the width is omitted but the height is given - # ("-geometry x2"), the message window expands over the whole screen - # (dmenu-like). If width is 0, the window expands to the longest - # message displayed. A positive x is measured from the left, a - # negative from the right side of the screen. Y is measured from - # the top and down respectively. - # The width can be negative. In this case the actual width is the - # screen width minus the width defined in within the geometry option. - geometry = "900x5-20+20" - - # Show how many messages are currently hidden (because of geometry). - indicate_hidden = yes - - # Shrink window if it's smaller than the width. Will be ignored if - # width is 0. - shrink = yes - - # The transparency of the window. Range: [0; 100]. - # This option will only work if a compositing window manager is - # present (e.g. xcompmgr, compiz, etc.). - transparency = 25 - - # The height of the entire notification. If the height is smaller - # than the font height and padding combined, it will be raised - # to the font height and padding. - notification_height = 0 - - # Draw a line of "separator_height" pixel height between two - # notifications. - # Set to 0 to disable. - separator_height = 2 - - # Padding between text and separator. - padding = 8 - - # Horizontal padding. - horizontal_padding = 8 - - # Defines width in pixels of frame around the notification window. - # Set to 0 to disable. - frame_width = 2 - - # Defines color of the frame around the notification window. - frame_color = "#888888" - - # Define a color for the separator. - # possible values are: - # * auto: dunst tries to find a color fitting to the background; - # * foreground: use the same color as the foreground; - # * frame: use the same color as the frame; - # * anything else will be interpreted as a X color. - separator_color = frame - - # Sort messages by urgency. - sort = yes - - # Don't remove messages, if the user is idle (no mouse or keyboard input) - # for longer than idle_threshold seconds. - # Set to 0 to disable. - # Transient notifications ignore this setting. - idle_threshold = 120 - - ### Text ### - - font = Iosevka 9 - - # The spacing between lines. If the height is smaller than the - # font height, it will get raised to the font height. - line_height = 3 - - # Possible values are: - # full: Allow a small subset of html markup in notifications: - # bold - # italic - # strikethrough - # underline - # - # For a complete reference see - # . - # - # strip: This setting is provided for compatibility with some broken - # clients that send markup even though it's not enabled on the - # server. Dunst will try to strip the markup but the parsing is - # simplistic so using this option outside of matching rules for - # specific applications *IS GREATLY DISCOURAGED*. - # - # no: Disable markup parsing, incoming notifications will be treated as - # plain text. Dunst will not advertise that it has the body-markup - # capability if this is set as a global setting. - # - # It's important to note that markup inside the format option will be parsed - # regardless of what this is set to. - markup = full - - # The format of the message. Possible variables are: - # %a appname - # %s summary - # %b body - # %i iconname (including its path) - # %I iconname (without its path) - # %p progress value if set ([ 0%] to [100%]) or nothing - # %n progress value if set without any extra characters - # %% Literal % - # Markup is allowed - format = "%s via %a %I %i -> " - - # Alignment of message text. - # Possible values are "left", "center" and "right". - alignment = left - - # Show age of message if message is older than show_age_threshold - # seconds. - # Set to -1 to disable. - show_age_threshold = 60 - - # Split notifications into multiple lines if they don't fit into - # geometry. - word_wrap = yes - - # When word_wrap is set to no, specify where to ellipsize long lines. - # Possible values are "start", "middle" and "end". - ellipsize = middle - - # Ignore newlines '\n' in notifications. - ignore_newline = no - - # Merge multiple notifications with the same content - stack_duplicates = true - - # Hide the count of merged notifications with the same content - hide_duplicate_count = false - - # Display indicators for URLs (U) and actions (A). - show_indicators = no - - ### Icons ### - - # Align icons left/right/off - icon_position = right - - # Scale larger icons down to this size, set to 0 to disable - max_icon_size = 16 - - # Paths to default icons. - icon_path = /usr/share/icons/gnome/16x16/status/:/usr/share/icons/gnome/32x32/devices/ - - ### History ### - - # Should a notification popped up from history be sticky or timeout - # as if it would normally do. - sticky_history = yes - - # Maximum amount of notifications kept in history - history_length = 20 - - ### Misc/Advanced ### - - # dmenu path. - dmenu = /usr/bin/dmenu -p dunst: - - # Browser for opening urls in context menu. - browser = /usr/bin/firefox-developer-edition -new-tab - - # Always run rule-defined scripts, even if the notification is suppressed - always_run_script = true - - # Define the title of the windows spawned by dunst - title = Notification - - # Define the class of the windows spawned by dunst - class = Notification - - # Print a notification on startup. - # This is mainly for error detection, since dbus (re-)starts dunst - # automatically after a crash. - # startup_notification = true - startup_notification = false - - ### Legacy - - # Use the Xinerama extension instead of RandR for multi-monitor support. - # This setting is provided for compatibility with older nVidia drivers that - # do not support RandR and using it on systems that support RandR is highly - # discouraged. - # - # By enabling this setting dunst will not be able to detect when a monitor - # is connected or disconnected which might break follow mode if the screen - # layout changes. - force_xinerama = false - -# Experimental features that may or may not work correctly. Do not expect them -# to have a consistent behaviour across releases. -[experimental] - # Calculate the dpi to use on a per-monitor basis. - # If this setting is enabled the Xft.dpi value will be ignored and instead - # dunst will attempt to calculate an appropriate dpi value for each monitor - # using the resolution and physical size. This might be useful in setups - # where there are multiple screens with very different dpi values. - per_monitor_dpi = true - -[shortcuts] - - # Shortcuts are specified as [modifier+][modifier+]...key - # Available modifiers are "ctrl", "mod1" (the alt-key), "mod2", - # "mod3" and "mod4" (windows-key). - # Xev might be helpful to find names for keys. - - # Close notification. - close = ctrl+space - - # Close all notifications. - close_all = ctrl+shift+space - - # Redisplay last message(s). - # On the US keyboard layout "grave" is normally above TAB and left - # of "1". Make sure this key actually exists on your keyboard layout, - # e.g. check output of 'xmodmap -pke' - history = ctrl+grave - - # Context menu. - context = ctrl+mod1+space - -[urgency_low] - # IMPORTANT: colors have to be defined in quotation marks. - # Otherwise the "#" and following would be interpreted as a comment. - background = "#222222" - foreground = "#aaaaaa" - timeout = 5 - # Icon for notifications with low urgency, uncomment to enable - #icon = /path/to/icon - -[urgency_normal] - background = "#222222" - foreground = "#ffffff" - timeout = 10 - # Icon for notifications with normal urgency, uncomment to enable - #icon = /path/to/icon - -[urgency_critical] - background = "#f92672" - foreground = "#111111" - frame_color = "#c90642" - timeout = 30 - # Icon for notifications with critical urgency, uncomment to enable - #icon = /path/to/icon - -# Every section that isn't one of the above is interpreted as a rules to -# override settings for certain messages. -# Messages can be matched by "appname", "summary", "body", "icon", "category", -# "msg_urgency" and you can override the "timeout", "urgency", "foreground", -# "background", "new_icon" and "format". -# Shell-like globbing will get expanded. -# -# SCRIPTING -# You can specify a script that gets run when the rule matches by -# setting the "script" option. -# The script will be called as follows: -# script appname summary body icon urgency -# where urgency can be "LOW", "NORMAL" or "CRITICAL". -# -# NOTE: if you don't want a notification to be displayed, set the format -# to "". -# NOTE: It might be helpful to run dunst -print in a terminal in order -# to find fitting options for rules. - -#[espeak] -# summary = "*" -# script = dunst_espeak.sh - -#[script-test] -# summary = "*script*" -# script = dunst_test.sh - -#[ignore] -# # This notification will not be displayed -# summary = "foobar" -# format = "" - -#[history-ignore] -# # This notification will not be saved in history -# summary = "foobar" -# history_ignore = yes - -#[signed_on] -# appname = Pidgin -# summary = "*signed on*" -# urgency = low -# -#[signed_off] -# appname = Pidgin -# summary = *signed off* -# urgency = low -# -#[says] -# appname = Pidgin -# summary = *says* -# urgency = critical -# -#[twitter] -# appname = Pidgin -# summary = *twitter.com* -# urgency = normal -# -# vim: ft=cfg diff --git a/apps/de/libinput/touchpad.conf b/apps/de/libinput/touchpad.conf deleted file mode 100644 index 6c7b894..0000000 --- a/apps/de/libinput/touchpad.conf +++ /dev/null @@ -1,9 +0,0 @@ -Section "InputClass" - Identifier "libinput touchpad" - MatchDevicePath "/dev/input/event*" - Driver "libinput" - MatchIsTouchpad "on" - Option "Tapping" "on" - Option "NaturalScrolling" "true" - Option "DisableWhileTyping" "false" -EndSection diff --git a/apps/de/sway/init b/apps/de/sway/init deleted file mode 100755 index 3ac04c8..0000000 --- a/apps/de/sway/init +++ /dev/null @@ -1,34 +0,0 @@ -#!/usr/bin/env sh - -[ -z "$XDG_CONFIG_HOME" ] && export XDG_CONFIG_HOME="$HOME/.config" -[ -z "$DOTFILES_PATH" ] && export DOTFILES_PATH="$XDG_CONFIG_HOME/dotfiles" - -. "$DOTFILES_PATH/bin/prelude" - -# killall -9 dunst &> /dev/null -# killall -9 urxvtd -# urxvtd & - -# key repeat -export WLC_REPEAT_DELAY=200 -export WLC_REPEAT_RATE=60 - -# caps lock -> escape key mapping -# export XKB_DEFAULT_OPTIONS=caps:escape - -# enable wayland support for some applications -export CLUTTER_BACKEND=wayland -export SDL_VIDEODRIVER=wayland -export MOZ_ENABLE_WAYLAND=1 -# export GDK_BACKEND=wayland -# export QT_QPA_PLATFORM=wayland-egl - -# configuration flag for some of my dotfiles scripts -export IS_WAYLAND=1 - -sway - -# mako & -# has_command libinput-gestures-setup && libinput-gestures-setup start -# has_command kdeconnect-indicator && kdeconnect-indicator & -# has_command gnome-keyring-daemon && eval "$(gnome-keyring-daemon --start --components=pkcs11,secrets,ssh)" diff --git a/apps/de/sxhkd/rc b/apps/de/sxhkd/rc deleted file mode 100755 index 71ede19..0000000 --- a/apps/de/sxhkd/rc +++ /dev/null @@ -1,266 +0,0 @@ -# node manager shortcuts - -# focus the node for the given path jump -super + {p,b,comma,period} - bspc node -f @{parent,brother,first,second} - -# set modes to tiled/floating for current node -super + {s,f} - bspc node -t {tiled,floating} - -# set modes to pseudo_tiled/fullscreen for current node -super + shift + {s,f} - bspc node -t {pseudo_tiled,fullscreen -l above} - -# focus the last node/desktop -super + {grave,Tab} - bspc {node,desktop} -f last - -# focus the next floating node -super + ctrl + f - bspc node -f next.floating - -# swap positions with the previous node -super + apostrophe - bspc node -s last - -# swap the current node with the biggest node on the current desktop -super + m - bspc node -s biggest - -# move/swap between nodes using vim-style arrows -super + {_,shift + }{h,j,k,l} - bspc node -{f,s} {west,south,north,east} - -# swap previous/next desktops - -super + bracket{left,right} - bspc desktop -f {prev,next} - -# preselect the splitting area for the current node -super + ctrl + {h,j,k,l} - bspc node -p {west,south,north,east} - -# clear the splitting area -super + ctrl + {_,shift + }space - bspc {node -p cancel,desktop -c} - -# expand the current node -super + alt + {h,j,k,l} - bspc node {@west -r -10,@south -r +10,@north -r -10,@east -r +10} - -# shrink the current node -super + alt + shift + {h,j,k,l} - bspc node {@east -r -10,@north -r +10,@south -r -10,@west -r +10} - -# set node split ratio -super + ctrl + {1-9} - bspc node -o 0.{1-9} - -# move a floating window very slowly -super + shift + {Left,Down,Up,Right} - bspc node --move {-1 0, 0 1, 0 -1, 1 0} - -# move a floating window -super + {Left,Down,Up,Right} - bspc node --move {-20 0, 0 20, 0 -20, 20 0} - -# focus/move node to the selected desktop -super + {_,shift + }{1-9,0} - bspc {desktop -f,node -d} {1-9,10} - -# # focus clicked node -~button1 - bspc node -f pointed - -# set the current node's dimensions to 1920x1080 (for streaming) -super + shift + alt + ctrl + s - wres1080 - -# # mouse controls for node movement and resizing -# super + button{1-3} -# bspc pointer -g {move,resize_side,resize_corner} - -# # simulate mouse2 -# shift + super + button1 -# bspc pointer -g resize_corner - -# # ??? -# super + !button{1-3} -# bspc pointer -t %i %i - -# # ??? -# super + @button{1-3} -# bspc pointer -u - -# change node gap and desktop padding -super + plus - bspc config -d focused window_gap $((`bspc config -d focused window_gap` + 5 )) - -super + equal - bspc config -m $(bspc query -M | head -n 1) top_padding $TOP_BAR_PADDING; bspc config -m $(bspc query -M | head -n 1) bottom_padding $BOTTOM_BAR_PADDING; bspc config -d focused window_gap $WINDOW_GAP - -super + minus - bspc config -d focused window_gap $((`bspc config -d focused window_gap` - 5 )) - -super + alt + r - bspc config -m $(bspc query -M | head -n 1) bottom_padding $BOTTOM_BAR_PADDING; bspc config -m $(bspc query -M | head -n 1) top_padding $TOP_BAR_PADDING; bspc config -d focused window_gap $WINDOW_GAP - -super + alt + equal - bspc config -d focused bottom_padding 0; bspc config -d focused top_padding 0; bspc config -d focused left_padding 0; bspc config -d focused right_padding 0 - -super + alt + plus - bspc config -d focused bottom_padding $(expr $(bspc config -d focused bottom_padding) + 5); bspc config -d focused top_padding $(expr $(bspc config -d focused top_padding) + 5); bspc config -d focused left_padding $(expr $(bspc config -d focused left_padding) + 5); bspc config -d focused right_padding $(expr $(bspc config -d focused right_padding) + 5) - -super + ctrl + alt + k - bspc config -d focused bottom_padding $(expr $(bspc config -d focused bottom_padding) - 5); bspc config -d focused top_padding $(expr $(bspc config -d focused top_padding) - 5) - -super + ctrl + alt + j - bspc config -d focused bottom_padding $(expr $(bspc config -d focused bottom_padding) + 5); bspc config -d focused top_padding $(expr $(bspc config -d focused top_padding) + 5) - -super + ctrl + alt + h - bspc config -d focused left_padding $(expr $(bspc config -d focused left_padding) - 5); bspc config -d focused right_padding $(expr $(bspc config -d focused right_padding) - 5) - -super + ctrl + alt + l - bspc config -d focused left_padding $(expr $(bspc config -d focused left_padding) + 5); bspc config -d focused right_padding $(expr $(bspc config -d focused right_padding) + 5) - -super + alt + plus - bspc config -d focused bottom_padding $(expr $(bspc config -d focused bottom_padding) + 5); bspc config -d focused top_padding $(expr $(bspc config -d focused top_padding) + 5); bspc config -d focused left_padding $(expr $(bspc config -d focused left_padding) + 5); bspc config -d focused right_padding $(expr $(bspc config -d focused right_padding) + 5) - -super + ctrl + alt + shift + space - bspc config -d focused bottom_padding 0; bspc config -d focused top_padding 0; bspc config -d focused left_padding 0; bspc config -d focused right_padding 0 - -super + ctrl + alt + space - bspc config -d focused bottom_padding 200; bspc config -d focused top_padding 200; bspc config -d focused left_padding 400; bspc config -d focused right_padding 400 - -super + alt + minus - bspc config -d focused bottom_padding $(expr $(bspc config -d focused bottom_padding) - 5) - -# rotate the current node -super + r - bspc node -R 90 - -# balance the current node's leaves -super + shift + b - bspc node -B - -# balance the current node's sibling leaves -super + ctrl + b - bspc node -f parent && bspc node -B - -# wm-independant shortcuts - -# spawn a transparent node -super + alt + t - "$TERMINAL" && compton-trans -c -o 0 - -# make current node transparent -super + t - compton-trans -c -o 0 - -# make current node fully opaque -super + shift + t - compton-trans -c -o 100 - -# swap sxhkd config with an alternate file and reload the new one -# super + shift + alt + ctrl + r -# if [ -e ~/.config/sxhkd/altsxhkdrc ]; then mv ~/.config/sxhkd/sxhkdrc ~/.config/sxhkd/origsxhkdrc && mv ~/.config/sxhkd/altsxhkdrc ~/.config/sxhkd/sxhkdrc && pkill -USR1 -x sxhkd; fi - -# spawn a terminal -super + Return - "$TERMINAL" - -# spawn a rock-solid and reliable terminal for when I break things -super + alt + Return - urxvt - -# spawn a floating terminal -super + shift + Return - bspc rule -a '*' -o state=floating && "$TERMINAL" - -# spawn the app launcher -super + space - app-launcher -modi run -show run - -# lock the desktop -super + ctrl + shift + l - dm-tool switch-to-greeter - # $SHELL -c '$DOTFILES_PATH/env/x/screensaver/lock.sh' - -# spawn gui file explorer -super + e - thunar - -# volumes controls and media navigation for media keys -{_,shift + }XF86AudioLowerVolume - amixer -D pulse sset Master 5%- - - # pulseaudio-ctl lower - # ADJ={10,1} && amixer -c 1 sset Speaker $ADJ%- && amixer -c 1 sset Headphone $ADJ%- && amixer -c 1 sset Master $ADJ%- && update_bar_MasterVolume - -{_,shift + }XF86AudioRaiseVolume - amixer -D pulse sset Master 5%+ - - # pulseaudio-ctl raise - # ADJ={10,1} && amixer -c 1 sset Speaker $ADJ%+ && amixer -c 1 sset Headphone $ADJ%+ && amixer -c 1 sset Master $ADJ%+ && update_bar_MasterVolume - -XF86AudioMute - amixer -D pulse sset Master toggle - - # pulseaudio-ctl mute - # amixer -c 1 sset Master toggle && update_bar_MasterVolume - -XF86AudioPlay - mpc toggle - -XF86AudioNext - mpc next - -XF86AudioPrev - mpc prev - -# monitor brightness controls for monitor birghtness keys -{_,shift + }XF86MonBrightnessUp - xbacklight + 10 - -{_,shift + }XF86MonBrightnessDown - xbacklight - 10 - -# open rofi as a window switcher -super + w - "app-launcher" -modi window,run -show window - -super + shift + v - sh -c 'kill -USR1 $(cat "/var/run/user/$UID/polybar-mic-script.sh.pid")' - -super + shift + v - sh -c 'kill -USR1 $(cat "/var/run/user/$UID/polybar-mic-script.sh.pid")' - -super + shift + e - rofimoji --insert-with-clipboard --rofi-args='--sort -sorting-method fzf' - -super + shift + p - rofi-pass - -# close the current application -super + c - bspc node -c - -# kill the current application -super + shift + c - bspc node -k - -# kill the wm, if alt is held, it will reload instead of truly quitting... -# I think? -super + ctrl + {alt +,_} Escape - sh -c '{bspc wm -d > "$BSPWM_STATE_FILE" && bspc quit, bspc quit 1}' - -# make sxhkd reload its configuration files: -super + Escape - pkill -USR1 -x sxhkd - -super + ctrl + c - bspc rule -a '*' -o state=floating && kitty -o remember_window_size=no -o initial_window_width=66c -o initial_window_height=10c sh -c "cal -n 3 && printf 'Press [ENTER] to close.' && read" - -super + ctrl + p - pass-chooser diff --git a/apps/de/x/init b/apps/de/x/init deleted file mode 100644 index af08cb0..0000000 --- a/apps/de/x/init +++ /dev/null @@ -1,14 +0,0 @@ -#!/usr/bin/env sh - -# as far as I can tell, this file is only executed when you run startx from the -# TTY - you probably want to modify xprofile - -[ -z "$XDG_CONFIG_HOME" ] && export XDG_CONFIG_HOME="$HOME/.config" -[ -z "$DOTFILES_PATH" ] && export DOTFILES_PATH="$XDG_CONFIG_HOME/dotfiles" - -. "$DOTFILES_PATH/bin/prelude" - -[ -f "$HOME/.xprofile" ] && . "$HOME/.xprofile" -[ -f "$ENV_PATH/x/init" ] && . "$ENV_PATH/x/init" - -exec "$DOTFILES_PATH/apps/de/bspwm/wmstart" diff --git a/apps/de/x/loadresources b/apps/de/x/loadresources deleted file mode 100755 index 70b5e07..0000000 --- a/apps/de/x/loadresources +++ /dev/null @@ -1,23 +0,0 @@ -#!/usr/bin/env sh - -xqm() { - f="$1"; shift; [ -f "$f" ] && xrdb -merge "$f" "$@" &>/dev/null -} - -xqm "/etc/X11/xinit/.Xresources" -xqm "$HOME/.Xresources" -xqm "$DOTFILES_PATH/bin/lib/colors/xresources" -xqm "$ENV_PATH/x/resources" - -sysmodmap="/etc/X11/xinit/.Xmodmap" -usermodmap="$ENV_PATH/x/modmap" - -[ -f "$sysmodmap" ] && xmodmap "$sysmodmap" &>/dev/null -[ -f "$usermodmap" ] && xmodmap "$usermodmap" &>/dev/null - -if [ -d "/etc/X11/xinit/xinitrc.d" ] ; then - for f in /etc/X11/xinit/xinitrc.d/?*.sh ; do - [ -x "$f" ] && . "$f" - done - unset f -fi diff --git a/apps/de/x/modmap b/apps/de/x/modmap deleted file mode 100644 index bb412e3..0000000 --- a/apps/de/x/modmap +++ /dev/null @@ -1,7 +0,0 @@ -! convert caps lock to control -clear Lock -keycode 66 = Control_L -add Control = Control_L - -! a fake keycode for xcape -keycode 254 = Escape diff --git a/apps/de/x/profile b/apps/de/x/profile deleted file mode 100755 index 766838d..0000000 --- a/apps/de/x/profile +++ /dev/null @@ -1,20 +0,0 @@ -#!/usr/bin/env bash - -[ -z "$XDG_CONFIG_HOME" ] && export XDG_CONFIG_HOME="$HOME/.config" -[ -z "$DOTFILES_PATH" ] && export DOTFILES_PATH="$XDG_CONFIG_HOME/dotfiles" - -. "$DOTFILES_PATH/bin/prelude" - -[ -f "$DOTFILES_PATH/apps/de/x/loadresources" ] && "$DOTFILES_PATH/apps/de/x/loadresources" -[ -f "$HOME/.xmodmap" ] && xmodmap "$HOME/.xmodmap" -has_command libinput-gestures-setup && libinput-gestures-setup start -has_command autorandr && autorandr -c -# has_command redshift && redshift -r -l 39.1:-94.6 -t 6500K:3000K & -has_command kdeconnect-indicator && kdeconnect-indicator & - -has_command gnome-keyring-daemon && eval "$(gnome-keyring-daemon --start --components=pkcs11,secrets,ssh)" -export SSH_AUTH_SOCK - -xset r rate 250 80 & # keyrepeat - -source maybe_source_env_file x/profile diff --git a/apps/de/x/resources b/apps/de/x/resources deleted file mode 100755 index 3d47fe4..0000000 --- a/apps/de/x/resources +++ /dev/null @@ -1,100 +0,0 @@ -! font -#define mono_font iosevka-lyte -#define mono_font_size 14 -#define bar_font_size 12 -#define mono_font_letterspace 0 -#define icon_font Font Awesome 5 Free Solid -#define icon_font_size 12 -#define bold_mono_font iosevka-lyte Semibold -#define emoji_font Noto Emoji -#define font_fallback_stack xft:icon_font,xft:FreeSans - -! window spacing -#define window_padding 24 -#define window_border 5 -#define window_margin 0 - -! dpi -#define base_dpi 92 - -! alternatives -!#define mono_font scientifica -!#define mono_font_size 11 -!#define mono_font curie -!#define mono_font_size 10 - -! font -*.font: xft:mono_font:pixelsize=mono_font_size,xft:emoji_font,font_fallback_stack -*.boldFont: xft:bold_mono_font:pixelsize=mono_font_size -*.letterSpace: mono_font_letterspace - -! rxvt-unicode -URxvt.termName: rxvt-unicode -URxvt.scrollBar: false -URxvt.cursorUnderline: true -URxvt.cursorBlink: true -URxvt.intensityStyles: true -URxvt.utf8: 1 -URxvt.scaleHeight: 1 -URxvt.depth: 32 -URxvt.internalBorder: window_padding -URxvt.perl-ext-common: default,matcher,resize-font -URxvt.keysym.M-Escape: perl:keyboard-select:activate -URxvt.resize-font.smaller: C-Down -URxvt.resize-font.bigger: C-Up -URxvt.url-launcher: /usr/bin/xdg-open -URxvt.matcher.button: 1 -URxvt.iso14755: False - -! misc -Xcursor.theme: human - -! dpi -dpi: base_dpi -.dpi: base_dpi -*dpi: base_dpi -Xft.dpi: base_dpi - -! font rendering -! TODO: is this still relevant? -*autohint: 0 -*lcdfilter: lcddefault -*hintstyle: hintfull -*hinting: 1 -*antialias: 1 -*rgba: rgb - -! bspwm -bspwm.window_gap: window_margin -bspwm.border_width: window_border -bspwm.num_desktops: 10 -bspwm.reverse_desktop_ordering: 0 -bspwm.reverse_monitor_desktops: 0 -bspwm.split_ratio: 0.5 -bspwm.start_compton: 0 -bspwm.start_bar: 1 - -! polybar -polybar.primary_font: mono_font:pixelsize=bar_font_size;1 -polybar.secondary_font: icon_font:style=Regular:pixelsize=icon_font_size;1 -polybar.display_monitor: DisplayPort-0 -polybar.bottom_of_display: 1 -polybar.margin: window_margin -polybar.storage_volume: / -polybar.ethernet_interface: eth0 -polybar.wireless_interface: wan0 -polybar.width: 100% -polybar.height: 40 -! if you have a margin value, be sure to include that in your offsets -polybar.offset_x: 0 -polybar.offset_y: 0 - -! rofi -rofi.font: mono_font mono_font_size -rofi.padding: window_padding -rofi.bw: window_border -rofi.color-enabled: true -rofi.monitor: -4 -rofi.width: 600 -rofi.sort: true -rofi.sorting-method: fzf diff --git a/apps/shell/fish/aliases.fish b/apps/shell/fish/aliases.fish index 943bd4d..eaa0899 100755 --- a/apps/shell/fish/aliases.fish +++ b/apps/shell/fish/aliases.fish @@ -48,7 +48,7 @@ function ltld echo $l end -alias vltl "vim (ltl)" +alias vltl "$EDITOR (ltl)" alias cdltl "cd (ltld)" alias ltlv vltl diff --git a/apps/udev-rules/lowbat b/apps/udev-rules/lowbat deleted file mode 100644 index 2077231..0000000 --- a/apps/udev-rules/lowbat +++ /dev/null @@ -1,2 +0,0 @@ -# Suspend the system when battery level drops to 3% or lower -SUBSYSTEM=="power_supply", ATTR{status}=="Discharging", ATTR{capacity}=="[0-5]", RUN+="/usr/bin/systemctl hibernate" diff --git a/apps/udev-rules/usb-device-plugin b/apps/udev-rules/usb-device-plugin deleted file mode 100644 index c2873e0..0000000 --- a/apps/udev-rules/usb-device-plugin +++ /dev/null @@ -1 +0,0 @@ -ACTION=="add", SUBSYSTEM=="usb_device", RUN+="xset r rate 300 80" diff --git a/apps/udev-rules/wifi-powersave b/apps/udev-rules/wifi-powersave deleted file mode 100644 index 334068d..0000000 --- a/apps/udev-rules/wifi-powersave +++ /dev/null @@ -1 +0,0 @@ -ACTION=="add", SUBSYSTEM=="net", KERNEL=="wl*", RUN+="/usr/bin/iw dev $name set power_save on" diff --git a/bin/lib/sudo_setup b/bin/lib/sudo_setup index 741440a..628d882 100755 --- a/bin/lib/sudo_setup +++ b/bin/lib/sudo_setup @@ -10,18 +10,8 @@ dfp=$(cd "$(dirname "${BASH_SOURCE[0]}" )/../../" && pwd) source "${dfp}/bin/lib/setup_helpers.bash" links=( - # display manager files - "apps/de/sway/init" "/usr/bin/sway-lytedev" - "apps/de/sway/dm-entry" "/usr/share/wayland-sessions/sway-lytedev.desktop" - - # TODO: laptop-specific setup? part of laptop env? - - # touchpad - "apps/de/libinput/touchpad.conf" "/etc/X11/xorg.conf.d/41-libinput-lytedev-touchpad-options.conf" - # udev rules "apps/udev-rules/lowbat" "/etc/udev/rules.d/99-lowbat.rules" - "apps/udev-rules/wifi-powersave" "/etc/udev/rules.d/81-wifi-powersave.rules" # tmpfiles "apps/tmpfiles/disable-lid-wakeup" "/etc/tmpfiles.d/disable-lid-wakeup.conf" diff --git a/env/desktop/gitconfig b/env/desktop/gitconfig deleted file mode 100644 index a389a95..0000000 --- a/env/desktop/gitconfig +++ /dev/null @@ -1,6 +0,0 @@ -[user] - signingkey = daniel@lytedev.io - -[commit] - gpgsign = true - diff --git a/env/desktop/x/resources b/env/desktop/x/resources deleted file mode 100755 index c809d1a..0000000 --- a/env/desktop/x/resources +++ /dev/null @@ -1,8 +0,0 @@ -#define bar_font_size 12 -# TODO: this needs fixing -polybar.primary_font: iosevka\-lyte:pixelsize=bar_font_size;1 -bspwm.num_desktops_per_monitor: 3 -bspwm.reverse_desktop_ordering: 0 -bspwm.reverse_monitor_desktops: 0 -polybar.display_monitor: DisplayPort-0 -polybar.height: 40 diff --git a/env/laptop/gitconfig b/env/laptop/gitconfig deleted file mode 100644 index a389a95..0000000 --- a/env/laptop/gitconfig +++ /dev/null @@ -1,6 +0,0 @@ -[user] - signingkey = daniel@lytedev.io - -[commit] - gpgsign = true - diff --git a/env/laptop/polybar b/env/laptop/polybar deleted file mode 100755 index 7c46a11..0000000 --- a/env/laptop/polybar +++ /dev/null @@ -1,9 +0,0 @@ -#!/usr/bin/env bash - -export BAR_SIDE_MARGIN=0 -export BAR_HEIGHT=80 - -[[ -v OVERRIDE_BAR_MONITOR ]] && export BAR_MONITOR="$OVERRIDE_BAR_MONITOR" -[[ -v OVERRIDE_BAR_HEIGHT ]] && export BAR_HEIGHT="$OVERRIDE_BAR_HEIGHT" - -return 0 diff --git a/env/laptop/vim b/env/laptop/vim deleted file mode 100755 index e69de29..0000000 diff --git a/env/laptop/x/docked.resources b/env/laptop/x/docked.resources deleted file mode 100755 index fe0ad9b..0000000 --- a/env/laptop/x/docked.resources +++ /dev/null @@ -1,7 +0,0 @@ -dpi: 92 -.dpi: 92 -*dpi: 92 -Xft.dpi: 92 - -polybar.display_monitor: DP1-1-8 -polybar.height: 40 diff --git a/env/laptop/x/games.resources b/env/laptop/x/games.resources deleted file mode 100644 index 3122459..0000000 --- a/env/laptop/x/games.resources +++ /dev/null @@ -1,7 +0,0 @@ -dpi: 92 -.dpi: 92 -*dpi: 92 -Xft.dpi: 92 - -polybar.display_monitor: eDP1 -polybar.height: 40 diff --git a/env/laptop/x/home.docked.resources b/env/laptop/x/home.docked.resources deleted file mode 100644 index 7229388..0000000 --- a/env/laptop/x/home.docked.resources +++ /dev/null @@ -1,4 +0,0 @@ -polybar.display_monitor: DP1-1 -polybar.height: 40 -bspwm.reverse_monitor_desktops: 1 -bspwm.reverse_desktop_ordering: 1 diff --git a/env/laptop/x/profile b/env/laptop/x/profile deleted file mode 100755 index 5911cfd..0000000 --- a/env/laptop/x/profile +++ /dev/null @@ -1,3 +0,0 @@ -#!/usr/bin/env sh - -has_command xcape && xcape -e 'Control_L=Escape' & diff --git a/env/laptop/x/resources b/env/laptop/x/resources deleted file mode 100755 index a36eb1c..0000000 --- a/env/laptop/x/resources +++ /dev/null @@ -1,21 +0,0 @@ -#define mono_font iosevka-lyte -#define mono_font_size 12 -#define bar_font_size 12 -#define icon_font Font Awesome 5 Free Solid -#define icon_font_size 12 - -*.font: xft:mono_font:pixelsize=mono_font_size,xft:Noto Emoji,xft:Font Awesome 5 Free:pixelsize=14,xft:FreeSans:pixelsize=14 -*.boldFont: xft:mono_font:style=bold:pixelsize=mono_font_size,xft:Font Awesome 5 Free:pixelsize=14,xft:FreeSans:pixelsize=14 - -# URxvt.font: xft:mono_font:pixelsize=32,xft:Noto Emoji,xft:Font Awesome 5 Free:pixelsize=14,xft:FreeSans:pixelsize=14 -# URxvt.boldFont: xft:mono_font:style=bold:pixelsize=32,xft:Font Awesome 5 Free:pixelsize=14,xft:FreeSans:pixelsize=14 - -dpi: 190 -.dpi: 190 -*dpi: 190 -Xft.dpi: 190 - -polybar.height: 70 -polybar.display_monitor: eDP1 -polybar.primary_font: mono_font:pixelsize=bar_font_size;1 -polybar.secondary_font: icon_font:style=Regular:pixelsize=icon_font_size;1 diff --git a/env/nix/machines/third.nix b/env/nix/machines/third.nix index 45e79cc..ad3fd7e 100644 --- a/env/nix/machines/third.nix +++ b/env/nix/machines/third.nix @@ -12,6 +12,20 @@ ../modules/users/valerie.nix ]; - networking.hostName = "third.lyte.dev"; - networking.firewall.enable = false; + networking = { + hostName = "third.lyte.dev"; + firewall.enable = false; + networkmanager.wifi.powersave = true; + }; + + services.fwupd = { + enable = true; + }; + + console.font = "TER16x32"; + + # services.upower = { + # enable = true; + # criticalPowerAction = "Hibernate"; + # }; } diff --git a/env/nix/modules/de/base.nix b/env/nix/modules/de/base.nix index 794bcdd..2877010 100644 --- a/env/nix/modules/de/base.nix +++ b/env/nix/modules/de/base.nix @@ -14,4 +14,8 @@ brightnessctl ]; }; + qt5 = { + platformTheme = "gtk2"; + style = "gtk2"; + }; } diff --git a/env/nix/modules/de/sway.nix b/env/nix/modules/de/sway.nix index 847a0c8..009cdc1 100644 --- a/env/nix/modules/de/sway.nix +++ b/env/nix/modules/de/sway.nix @@ -1,19 +1,52 @@ -{ config, pkgs, ... }: { +{ config, pkgs, ... }: + +let + unstable = import { config = { allowUnfree = true; }; }; +in { imports = [ ./base.nix ]; - programs.sway = { + programs = { + sway = { + enable = true; + extraPackages = with pkgs; [ + swaylock + swayidle + xwayland + waybar + mako + kanshi + wl-clipboard + slurp + grim + font-awesome + unstable.gammastep + ]; + extraSessionCommands = '' + export WLC_REPEAT_DELAY=200 + export WLC_REPEAT_RATE=60 + export CLUTTER_BACKEND=wayland + export SDL_VIDEODRIVER=wayland + export MOZ_ENABLE_WAYLAND=1 + export XDG_SESSION_TYPE=wayland + export XDG_CURRENT_DESKTOP=sway + ''; + }; + waybar.enable = true; + }; + services = { + pipewire.enable = true; + xserver.libinput = { + enable = true; + tapping = true; + naturalScrolling = true; + disableWhileTyping = false; + }; + }; + xdg.portal = { enable = true; - extraPackages = with pkgs; [ - swaylock - swayidle - xwayland - waybar - mako - kanshi - wl-clipboard - slurp - grim - font-awesome + gtkUsePortal = true; + extraPortals = with pkgs; [ + xdg-desktop-portal-gtk + xdg-desktop-portal-wlr ]; }; - # services.xserver.displayManager.defaultSession = "sway-lytedev"; } diff --git a/env/nix/modules/intel.nix b/env/nix/modules/intel.nix index 9072b7d..57b86a4 100644 --- a/env/nix/modules/intel.nix +++ b/env/nix/modules/intel.nix @@ -5,11 +5,14 @@ vaapiIntel = pkgs.vaapiIntel.override { enableHybridCodec = true; }; }; }; - hardware.opengl = { - extraPackages = with pkgs; [ - vaapiIntel - vaapiVdpau - libvdpau-va-gl - ]; + hardware = { + cpu.intel.updateMicrocode = true; + opengl = { + extraPackages = with pkgs; [ + vaapiIntel + vaapiVdpau + libvdpau-va-gl + ]; + }; }; } diff --git a/env/nix/modules/users/daniel.nix b/env/nix/modules/users/daniel.nix index d154d5e..ef55ff0 100644 --- a/env/nix/modules/users/daniel.nix +++ b/env/nix/modules/users/daniel.nix @@ -32,6 +32,7 @@ automake autoconf ncurses + weechat ]; }; } diff --git a/env/nix/profiles/base.nix b/env/nix/profiles/base.nix index 3f7dd42..1c45506 100644 --- a/env/nix/profiles/base.nix +++ b/env/nix/profiles/base.nix @@ -37,4 +37,28 @@ services = { openssh.enable = true; }; + + console = { + earlySetup = true; + colors = [ + "111111" + "f92672" + "a6e22e" + "f4bf75" + "66d9ef" + "ae81ff" + "a1efe4" + "f8f8f2" + "75715e" + "f92672" + "a6e22e" + "f4bf75" + "66d9ef" + "ae81ff" + "a1efe4" + "f9f8f5" + ]; + # useXkbConfig = true; + # TODO: setup caps-lock as Control/Escape? + }; }