···11+#
22+# aerc main configuration
33+44+[ui]
55+index-columns = date<*,name<17,flags>4,subject<*
66+column-date = {{.DateAutoFormat .Date.Local}}
77+column-name = {{index (.From | names) 0}}
88+column-flags = {{.Flags | join ""}}
99+column-subject = {{.ThreadPrefix}}{{.Subject}}
1010+1111+#
1212+# See time.Time#Format at https://godoc.org/time#Time.Format
1313+#
1414+# Default: 2006-01-02 03:04 PM (ISO 8601 + 12 hour time)
1515+timestamp-format=2006-01-02 03:04 PM
1616+1717+#
1818+# Width of the sidebar, including the border.
1919+#
2020+# Default: 20
2121+sidebar-width=20
2222+2323+#
2424+# Message to display when viewing an empty folder.
2525+#
2626+# Default: (no messages)
2727+empty-message=(no messages)
2828+2929+# Message to display when no folders exists or are all filtered
3030+#
3131+# Default: (no folders)
3232+empty-dirlist=(no folders)
3333+3434+# Enable mouse events in the ui, e.g. clicking and scrolling with the mousewheel
3535+#
3636+# Default: false
3737+mouse-enabled=false
3838+3939+#
4040+# Ring the bell when new messages are received
4141+#
4242+# Default: true
4343+new-message-bell=true
4444+4545+# Marker to show before a pinned tab's name.
4646+#
4747+# Default: `
4848+pinned-tab-marker='`'
4949+5050+dirlist-left = {{.Folder}}
5151+dirlist-right = {{if .Unread}}{{humanReadable .Unread}}/{{end}}{{if .Exists}}{{humanReadable .Exists}}{{end}}
5252+5353+# List of space-separated criteria to sort the messages by, see *sort*
5454+# command in *aerc*(1) for reference. Prefixing a criterion with "-r "
5555+# reverses that criterion.
5656+#
5757+# Example: "from -r date"
5858+#
5959+# Default: ""
6060+sort=from -r date
6161+6262+# Moves to next message when the current message is deleted
6363+#
6464+# Default: true
6565+next-message-on-delete=true
6666+6767+# The directories where the stylesets are stored. It takes a colon-separated
6868+# list of directories.
6969+#
7070+# default: /usr/local/share/aerc/stylesets/
7171+stylesets-dirs=/usr/local/share/aerc/stylesets/
7272+7373+# Sets the styleset to use for the aerc ui elements.
7474+#
7575+# Default: default
7676+styleset-name=default
7777+7878+[viewer]
7979+#
8080+# Specifies the pager to use when displaying emails. Note that some filters
8181+# may add ANSI codes to add color to rendered emails, so you may want to use a
8282+# pager which supports ANSI codes.
8383+#
8484+# Default: less -R
8585+pager=less -R
8686+8787+#
8888+# If an email offers several versions (multipart), you can configure which
8989+# mimetype to prefer. For example, this can be used to prefer plaintext over
9090+# html emails.
9191+#
9292+# Default: text/plain,text/html
9393+alternatives=text/plain,text/html
9494+9595+#
9696+# Default setting to determine whether to show full headers or only parsed
9797+# ones in message viewer.
9898+#
9999+# Default: false
100100+show-headers=false
101101+102102+#
103103+# Layout of headers when viewing a message. To display multiple headers in the
104104+# same row, separate them with a pipe, e.g. "From|To". Rows will be hidden if
105105+# none of their specified headers are present in the message.
106106+#
107107+# Default: From|To,Cc|Bcc,Date,Subject
108108+header-layout=From|To,Cc|Bcc,Date,Subject
109109+110110+# Whether to always show the mimetype of an email, even when it is just a single part
111111+#
112112+# Default: false
113113+always-show-mime=false
114114+115115+# How long to wait after the last input before auto-completion is triggered.
116116+#
117117+# Default: 250ms
118118+completion-delay=250ms
119119+120120+#
121121+# Global switch for completion popovers
122122+#
123123+# Default: true
124124+completion-popovers=true
125125+126126+[compose]
127127+#
128128+# Specifies the command to run the editor with. It will be shown in an embedded
129129+# terminal, though it may also launch a graphical window if the environment
130130+# supports it. Defaults to $EDITOR, or vi.
131131+editor=
132132+133133+#
134134+# Default header fields to display when composing a message. To display
135135+# multiple headers in the same row, separate them with a pipe, e.g. "To|From".
136136+#
137137+# Default: To|From,Subject
138138+header-layout=To|From,Subject
139139+140140+#
141141+# Specifies the command to be used to tab-complete email addresses. Any
142142+# occurrence of "%s" in the address-book-cmd will be replaced with what the
143143+# user has typed so far.
144144+#
145145+# The command must output the completions to standard output, one completion
146146+# per line. Each line must be tab-delimited, with an email address occurring as
147147+# the first field. Only the email address field is required. The second field,
148148+# if present, will be treated as the contact name. Additional fields are
149149+# ignored.
150150+address-book-cmd=
151151+152152+[filters]
153153+#
154154+# Filters allow you to pipe an email body through a shell command to render
155155+# certain emails differently, e.g. highlighting them with ANSI escape codes.
156156+#
157157+# The first filter which matches the email's mimetype will be used, so order
158158+# them from most to least specific.
159159+#
160160+# You can also match on non-mimetypes, by prefixing with the header to match
161161+# against (non-case-sensitive) and a comma, e.g. subject,text will match a
162162+# subject which contains "text". Use header,~regex to match against a regex.
163163+subject,~^\[PATCH=awk -f /usr/lib/aerc/filters/hldiff
164164+#text/html=/usr/local/share/aerc/filters/html
165165+text/*=awk -f /usr/lib/aerc/filters/plaintext
166166+#image/*=catimg -w $(tput cols) -
167167+168168+[triggers]
169169+#
170170+# Triggers specify commands to execute when certain events occur.
171171+#
172172+# Example:
173173+# new-email=exec notify-send "New email from %n" "%s"
174174+175175+#
176176+# Executed when a new email arrives in the selected folder
177177+new-email=
178178+179179+[templates]
180180+# Templates are used to populate email bodies automatically.
181181+#
182182+183183+# The directories where the templates are stored. It takes a colon-separated
184184+# list of directories.
185185+#
186186+# default: /usr/local/share/aerc/templates/
187187+template-dirs=/usr/local/share/aerc/templates/
188188+189189+# The template to be used for quoted replies.
190190+#
191191+# default: quoted_reply
192192+quoted-reply=quoted_reply
193193+194194+# The template to be used for forward as body.
195195+#
196196+# default: forward_as_body
197197+forwards=forward_as_body
+101
aerc/binds.conf
···11+# Binds are of the form <key sequence> = <command to run>
22+# To use '=' in a key sequence, substitute it with "Eq": "<Ctrl+Eq>"
33+# If you wish to bind #, you can wrap the key sequence in quotes: "#" = quit
44+<C-p> = :prev-tab<Enter>
55+<C-n> = :next-tab<Enter>
66+<C-t> = :term<Enter>
77+88+[messages]
99+q = :quit<Enter>
1010+1111+j = :next<Enter>
1212+<Down> = :next<Enter>
1313+<C-d> = :next 50%<Enter>
1414+<C-f> = :next 100%<Enter>
1515+<PgDn> = :next -s 100%<Enter>
1616+1717+k = :prev<Enter>
1818+<Up> = :prev<Enter>
1919+<C-u> = :prev 50%<Enter>
2020+<C-b> = :prev 100%<Enter>
2121+<PgUp> = :prev -s 100%<Enter>
2222+g = :select 0<Enter>
2323+G = :select -1<Enter>
2424+2525+J = :next-folder<Enter>
2626+K = :prev-folder<Enter>
2727+2828+<Enter> = :view<Enter>
2929+d = :confirm 'Really delete this message?' ':delete-message<Enter>'<Enter>
3030+#D = :delete<Enter>
3131+D = :move Trash <Enter>
3232+A = :archive flat<Enter>
3333+3434+C = :compose<Enter>
3535+3636+rr = :reply -a<Enter>
3737+rq = :reply -aq<Enter>
3838+Rr = :reply<Enter>
3939+Rq = :reply -q<Enter>
4040+4141+Rd = :read<Enter>
4242+4343+c = :cf<space>
4444+$ = :term<space>
4545+! = :term<space>
4646+| = :pipe<space>
4747+4848+/ = :search<space>
4949+n = :next-result<Enter>
5050+N = :prev-result<Enter>
5151+5252+[view]
5353+q = :close<Enter>
5454+| = :pipe<space>
5555+D = :move Trash <Enter>
5656+S = :save<space>
5757+A = :archive flat<Enter>
5858+5959+f = :forward<Enter>
6060+rr = :reply -a<Enter>
6161+rq = :reply -aq<Enter>
6262+Rr = :reply<Enter>
6363+Rq = :reply -q<Enter>
6464+6565+H = :toggle-headers<Enter>
6666+<C-k> = :prev-part<Enter>
6767+<C-j> = :next-part<Enter>
6868+J = :next<Enter>
6969+K = :prev<Enter>
7070+7171+[compose]
7272+# Keybindings used when the embedded terminal is not selected in the compose
7373+# view
7474+$ex = <C-x>
7575+<C-k> = :prev-field<Enter>
7676+<C-j> = :next-field<Enter>
7777+<tab> = :next-field<Enter>
7878+7979+[compose::editor]
8080+# Keybindings used when the embedded terminal is selected in the compose view
8181+$noinherit = true
8282+$ex = <C-x>
8383+<C-k> = :prev-field<Enter>
8484+<C-j> = :next-field<Enter>
8585+<C-p> = :prev-tab<Enter>
8686+<C-n> = :next-tab<Enter>
8787+8888+[compose::review]
8989+# Keybindings used when reviewing a message to be sent
9090+y = :send<Enter>
9191+n = :abort<Enter>
9292+q = :abort<Enter>
9393+e = :edit<Enter>
9494+a = :attach<Enter>
9595+9696+[terminal]
9797+$noinherit = true
9898+$ex = <C-x>
9999+100100+<C-p> = :prev-tab<Enter>
101101+<C-n> = :next-tab<Enter>
+219
configuration.nix
···11+# Edit this configuration file to define what should be installed on
22+## your system. Help is available in the configuration.nix(5) man page, on
33+# https://search.nixos.org/options and in the NixOS manual (`nixos-help`).
44+55+{ config, lib, pkgs, ... }:
66+77+{
88+ imports =
99+ [ # Include the results of the hardware scan.
1010+ ./hardware-configuration.nix
1111+ <home-manager/nixos>
1212+ ];
1313+1414+1515+ # Use the systemd-boot EFI boot loader.
1616+ boot.loader.systemd-boot.enable = true;
1717+ boot.loader.efi.canTouchEfiVariables = true;
1818+1919+ # networking.hostName = "nixos"; # Define your hostname.
2020+ # Pick only one of the below networking options.
2121+ # networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
2222+ # networking.networkmanager.enable = true; # Easiest to use and most distros use this by default.
2323+2424+ # Set your time zone.
2525+ time.timeZone = "America/Chicago";
2626+2727+ # Configure network proxy if necessary
2828+ # networking.proxy.default = "http://user:password@proxy:port/";
2929+ # networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
3030+3131+ # Select internationalisation properties.
3232+ i18n.defaultLocale = "en_US.UTF-8";
3333+ # console = {
3434+ # font = "Lat2-Terminus16";
3535+ # keyMap = "us";
3636+ # useXkbConfig = true; # use xkb.options in tty.
3737+ # };
3838+3939+ # Networking
4040+4141+ networking.hostName = "odin";
4242+ # I like systemd-networkd
4343+ systemd.network.enable = true;
4444+ networking.useNetworkd = true;
4545+ # TODO: static IP @ 192.168.1.2
4646+4747+ # Enable the X11 windowing system.
4848+ services.xserver.enable = true;
4949+5050+5151+5252+5353+ # Configure keymap in X11
5454+ # services.xserver.xkb.layout = "us";
5555+ # services.xserver.xkb.options = "eurosign:e,caps:escape";
5656+5757+ # Enable CUPS to print documents.
5858+ # services.printing.enable = true;
5959+6060+ # Enable sound.
6161+ security.rtkit.enable = true;
6262+ services.pipewire = {
6363+ enable = true;
6464+ alsa.enable = true;
6565+ pulse.enable = true;
6666+ };
6767+6868+ # Graphics and parallel compute configuration
6969+ hardware.opengl.extraPackages = [
7070+ # TODO: figure out why this doesn't work
7171+ # Looks like it requires unfree
7272+ # rocmPackages.clr.icd
7373+ pkgs.amdvlk
7474+ pkgs.libva
7575+ ];
7676+7777+ # Enable touchpad support (enabled default in most desktopManager).
7878+ # services.xserver.libinput.enable = true;
7979+8080+ # Define a user account. Don't forget to set a password with ‘passwd’.
8181+ users.users.noah = {
8282+ isNormalUser = true;
8383+ shell = pkg.fish
8484+ extraGroups = [ "wheel" "video" ]; # Enable ‘sudo’ for the user.
8585+ hashedPasswordFile = "./noah-password"
8686+ openssh.authorizedKeys.keys = [
8787+ "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDnp/AcaPipgw4+HnqpYioG+DgheOWBYDOnVkXi42PC0R1FMc+bm4wVP8TA9DAWczaWmllqlA8N2/LSleaqp+46r980VgqmeYEem5aHJuR+Cq/Mg2Z2wcp9VT8njH72wIPIUOXAv+dnPnCe4yvoasgvhwZZCDE4BFTIImuTxrEFPg5ayvkr7b/mUg9LbxaVSjK7fk082pqlShizIKAVcgIIa0lCFSMUs1V/eLi5D11moVcxJU/QoEBh+6Qn5BVM0taPFA4Gbi+288LobQ8RcgRBXKpP03Dt+onYuZQ3KzFjd6USi/d4M+pByrWFcpBJfMXuXJLuwsSF7SfxsuqjjlDt Portable"
8888+ ];
8989+ };
9090+ # I manage my home with home-manager
9191+ # Don't store packages in ~/.nix-profile, use /etc/profiles so we can build-vm
9292+ home-manager.useUserPackages = true;
9393+ # No more NIX_PATH, use system pkgs
9494+ home-manager.useGlobalPkgs = true;
9595+9696+ home-manager.users.noah = import ./noah-home.nix ;
9797+9898+ # List packages installed in system profile. To search, run:
9999+ # $ nix search wget
100100+ environment.systemPackages = with pkgs; [
101101+ neovim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
102102+ pkgs.appimage-run
103103+ wget
104104+ kitty
105105+ w3m
106106+ fishPlugins.fzf-fish
107107+ fzf
108108+ ];
109109+110110+ # Fonts
111111+ fonts.packages = with pkgs; [
112112+ fira-code
113113+ fira-code-symbols
114114+ noto-fonts
115115+ noto-fonts-cjk
116116+ noto-fonts-emoji
117117+ noto-fonts-extra
118118+ ];
119119+120120+ # Fix dynamically linked libraries for unpackaged binaries
121121+ programs.nix-ld = {
122122+ enable = true;
123123+ libraries = with pkgs; [
124124+ # Add missing dynamic libraries for unpackaged programs HERE
125125+ # NOT in environment.systemPackages
126126+127127+ ];
128128+ };
129129+130130+ # Some programs need SUID wrappers, can be configured further or are
131131+ # started in user sessions.
132132+ # programs.mtr.enable = true;
133133+ programs.gnupg.agent = {
134134+ enable = true;
135135+ enableSSHSupport = true;
136136+ };
137137+138138+ # List services that you want to enable:
139139+140140+ # Enable the OpenSSH daemon.
141141+ services.openssh.enable = true;
142142+143143+ # Open ports in the firewall.
144144+ # networking.firewall.allowedTCPPorts = [ ... ];
145145+ # networking.firewall.allowedUDPPorts = [ ... ];
146146+ # Or disable the firewall altogether.
147147+ # TODO: allow some ports
148148+ networking.firewall.enable = true;
149149+150150+ # Copy the NixOS configuration file and link it from the resulting system
151151+ # (/run/current-system/configuration.nix). This is useful in case you
152152+ # accidentally delete configuration.nix.
153153+ system.copySystemConfiguration = true;
154154+155155+ # This option is for enabling the bolt daemon for managing Thunderbolt/USB4 Devices.
156156+ services.hardware.bolt.enable = true;
157157+158158+ # Polkit is a dependency of Sway. It's responsible for handling security policies
159159+ security.polkit.enable = true;
160160+161161+ # Enable the sway window manager
162162+ programs.sway = {
163163+ enable = true;
164164+ wrapperFeatures.gtk = true;
165165+ };
166166+ # Use greetd as the displaymanager
167167+ #services.xserver.displayManager.greetd.enable = true;
168168+ services.xserver.displayManager.lightdm.enable = false;
169169+ xdg.portal = {
170170+ enable = true;
171171+ wlr.enable = true;
172172+ extraPortals = [ pkgs.xdg-desktop-portal-gtk ];
173173+ };
174174+175175+ # Declarative only optoins.
176176+ # I don't want to allow ad-hoc modifying users on the system.
177177+ # Users must be declared either as part of a package or in this file.
178178+ users.mutableUsers = false;
179179+180180+181181+ # Automatic system upgrades
182182+ system.autoUpgrade = {
183183+ enable = true;
184184+ dates = "09:00";
185185+ randomizedDelaySec = "45min";
186186+ };
187187+188188+ # Unfree packages need to be whitelisted here
189189+190190+ nixpkgs.config.allowUnfreePredicate = pkg:
191191+ builtins.elem (lib.getName pkg) [
192192+ "discord"
193193+ "spotify"
194194+ "obsidian"
195195+ "tailscale"
196196+ ];
197197+ # Logseq uses an ancient version of Electron, so we enable that
198198+ nixpkgs.config.permittedInsecurePackages = [ "electron-25.9.0" ];
199199+200200+ # This option defines the first version of NixOS you have installed on this particular machine,
201201+ # and is used to maintain compatibility with application data (e.g. databases) created on older NixOS versions.
202202+ #
203203+ # Most users should NEVER change this value after the initial install, for any reason,
204204+ # even if you've upgraded your system to a new NixOS release.
205205+ #
206206+ # This value does NOT affect the Nixpkgs version your packages and OS are pulled from,
207207+ # so changing it will NOT upgrade your system.
208208+ #
209209+ # This value being lower than the current NixOS release does NOT mean your system is
210210+ # out of date, out of support, or vulnerable.
211211+ #
212212+ # Do NOT change this value unless you have manually inspected all the changes it would make to your configuration,
213213+ # and migrated your data accordingly.
214214+ #
215215+ # For more information, see `man configuration.nix` or https://nixos.org/manual/nixos/stable/options#opt-system.stateVersion .
216216+ system.stateVersion = "23.11"; # Did you read the comment?
217217+218218+}
219219+
···11+# This dotfile is managed using dotdrop
22+33+# Read `man 5 sway` for a complete reference.
44+55+### Variables
66+# Font config
77+font Berkeley Mono Medium 12
88+# Logo key. Use Mod1 for Alt.
99+set $mod Mod4
1010+# Home row direction keys, like vim
1111+set $left h
1212+set $down j
1313+set $up k
1414+set $right l
1515+1616+# Your preferred terminal emulator
1717+set $term kitty
1818+# Your preferred application launcher
1919+# Note: it's recommended that you pass the final command to sway
2020+#set $menu dmenu_path | dmenu | xargs swaymsg exec --
2121+2222+set $menu exec kitty --class 'launcher' sh -c 'compgen -c | sort -u | fzf | xargs -r swaymsg -t command exec'
2323+for_window [app_id="^launcher$"] floating enable, border none, resize set width 25 ppt height 100 ppt, move position 0 px 0 px
2424+2525+# Lockscreen
2626+set $lock swaylock -c 892243 -e
2727+2828+# Set laptop display
2929+set $laptop eDP-1
3030+exec sh -c "if [ 2 -lt $(swaymsg -t get_outputs -r | jq '. | length') ]; then swaymsg output $laptop disable; fi"
3131+3232+### Output configuration
3333+#
3434+# Default wallpaper (more resolutions are available in /usr/share/backgrounds/sway/)
3535+output * bg #799A91 solid_color
3636+#
3737+# Example configuration:
3838+#
3939+# output HDMI-A-1 resolution 1920x1080 position 1920,0
4040+#
4141+# You can get the names of your outputs by running: swaymsg -t get_outputs
4242+4343+### Idle configuration
4444+set $idle swayidle -w \
4545+ timeout 300 '$lock' \
4646+ timeout 600 'swaymsg "output * dpms off"' \
4747+ timeout 15 'if pgrep -x swaylock; then swaymsg "output * dpms off"; fi' \
4848+ resume 'swaymsg "output * dpms on"' \
4949+ before-sleep '$lock'
5050+exec $idle
5151+#
5252+# This will lock your screen after 300 seconds of inactivity, then turn off
5353+# your displays after another 300 seconds, and turn your screens back on when
5454+# resumed. It will also lock your screen before your computer goes to sleep,
5555+# and shut off the screen 15 seconds after being locked manually
5656+5757+### Input configuration
5858+#
5959+# Example configuration:
6060+#
6161+# input "2:14:SynPS/2_Synaptics_TouchPad" {
6262+# dwt enabled
6363+# tap enabled
6464+# natural_scroll enabled
6565+# middle_emulation enabled
6666+# }
6767+#
6868+# You can get the names of your inputs by running: swaymsg -t get_inputs
6969+# Read `man 5 sway-input` for more information about this section.
7070+7171+7272+input "1133:45081:MX_Master_2S_Mouse" {
7373+ pointer_accel 0
7474+ accel_profile flat
7575+}
7676+7777+7878+exec xrdb -merge "/home/noah/.config/Xresources.d/all"
7979+### Key bindings
8080+#
8181+# Basics:
8282+#
8383+# start a terminal
8484+bindsym $mod+Return exec $term
8585+8686+# kill focused window
8787+bindsym $mod+Shift+q kill
8888+8989+# start your launcher
9090+bindsym $mod+d exec $menu
9191+9292+# Screenshots
9393+bindsym $mod+p exec grim -g "$(slurp -d)" - | wl-copy
9494+9595+# Drag floating windows by holding down $mod and left mouse button.
9696+# Resize them with right mouse button + $mod.
9797+# Despite the name, also works for non-floating windows.
9898+# Change normal to inverse to use left mouse button for resizing and right
9999+# mouse button for dragging.
100100+floating_modifier $mod normal
101101+102102+# reload the configuration file
103103+bindsym $mod+Shift+c reload
104104+105105+# Manually lock the desktop
106106+bindsym $mod+Alt+l exec $lock
107107+108108+# Shut down
109109+bindsym $mod+Alt+p exec swaynag --message "Shut down laptop?" \
110110+ --button-dismiss-no-terminal "Shutdown" "systemctl poweroff" -e bottom \
111111+ --font 'Berkeley Mono'
112112+113113+# exit sway (logs you out of your Wayland session)
114114+bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -b 'Yes, exit sway' 'swaymsg exit'
115115+116116+bindsym --release Print exec grim -g \"$(slurp)" - | wl-copy
117117+#
118118+# Moving around:
119119+#
120120+ # Move your focus around
121121+ bindsym $mod+$left focus left
122122+ bindsym $mod+$down focus down
123123+ bindsym $mod+$up focus up
124124+ bindsym $mod+$right focus right
125125+ # or use $mod+[up|down|left|right]
126126+ bindsym $mod+Left focus left
127127+ bindsym $mod+Down focus down
128128+ bindsym $mod+Up focus up
129129+ bindsym $mod+Right focus right
130130+131131+ # _move_ the focused window with the same, but add Shift
132132+ bindsym $mod+Shift+$left move left
133133+ bindsym $mod+Shift+$down move down
134134+ bindsym $mod+Shift+$up move up
135135+ bindsym $mod+Shift+$right move right
136136+ # ditto, with arrow keys
137137+ bindsym $mod+Shift+Left move left
138138+ bindsym $mod+Shift+Down move down
139139+ bindsym $mod+Shift+Up move up
140140+ bindsym $mod+Shift+Right move right
141141+#
142142+# Workspaces:
143143+#
144144+ # switch to workspace
145145+ bindsym $mod+1 workspace 1
146146+ bindsym $mod+2 workspace 2
147147+ bindsym $mod+3 workspace 3
148148+ bindsym $mod+4 workspace 4
149149+ bindsym $mod+5 workspace 5
150150+ bindsym $mod+6 workspace 6
151151+ bindsym $mod+7 workspace 7
152152+ bindsym $mod+8 workspace 8
153153+ bindsym $mod+9 workspace 9
154154+ bindsym $mod+0 workspace 10
155155+ # move focused container to workspace
156156+ bindsym $mod+Shift+1 move container to workspace 1
157157+ bindsym $mod+Shift+2 move container to workspace 2
158158+ bindsym $mod+Shift+3 move container to workspace 3
159159+ bindsym $mod+Shift+4 move container to workspace 4
160160+ bindsym $mod+Shift+5 move container to workspace 5
161161+ bindsym $mod+Shift+6 move container to workspace 6
162162+ bindsym $mod+Shift+7 move container to workspace 7
163163+ bindsym $mod+Shift+8 move container to workspace 8
164164+ bindsym $mod+Shift+9 move container to workspace 9
165165+ bindsym $mod+Shift+0 move container to workspace 10
166166+ # Note: workspaces can have any name you want, not just numbers.
167167+ # We just use 1-10 as the default.
168168+#
169169+# Layout stuff:
170170+#
171171+ # You can "split" the current object of your focus with
172172+ # $mod+b or $mod+v, for horizontal and vertical splits
173173+ # respectively.
174174+ bindsym $mod+g splith
175175+ bindsym $mod+v splitv
176176+177177+ # Switch the current container between different layout styles
178178+ bindsym $mod+s layout stacking
179179+ bindsym $mod+w layout tabbed
180180+ bindsym $mod+e layout toggle split
181181+182182+ # Make the current focus fullscreen
183183+ bindsym $mod+f fullscreen
184184+185185+ # Toggle the current focus between tiling and floating mode
186186+ bindsym $mod+Shift+space floating toggle
187187+188188+ # Swap focus between the tiling area and the floating area
189189+ bindsym $mod+space focus mode_toggle
190190+191191+ # move focus to the parent container
192192+ bindsym $mod+a focus parent
193193+#
194194+# Scratchpad:
195195+#
196196+ # Sway has a "scratchpad", which is a bag of holding for windows.
197197+ # You can send windows there and get them back later.
198198+199199+ # Move the currently focused window to the scratchpad
200200+ bindsym $mod+Shift+m move scratchpad
201201+202202+ # Show the next scratchpad window or hide the focused scratchpad window.
203203+ # If there are multiple scratchpad windows, this command cycles through them.
204204+ bindsym $mod+Shift+a scratchpad show
205205+#
206206+# Resizing containers:
207207+#
208208+mode "resize" {
209209+ # left will shrink the containers width
210210+ # right will grow the containers width
211211+ # up will shrink the containers height
212212+ # down will grow the containers height
213213+ bindsym $left resize shrink width 10px
214214+ bindsym $down resize grow height 10px
215215+ bindsym $up resize shrink height 10px
216216+ bindsym $right resize grow width 10px
217217+218218+ # ditto, with arrow keys
219219+ bindsym Left resize shrink width 10px
220220+ bindsym Down resize grow height 10px
221221+ bindsym Up resize shrink height 10px
222222+ bindsym Right resize grow width 10px
223223+224224+ # return to default mode
225225+ bindsym Return mode "default"
226226+ bindsym Escape mode "default"
227227+}
228228+bindsym $mod+r mode "resize"
229229+230230+# Media and other hardware keys
231231+bindsym XF86AudioRaiseVolume exec pactl set-sink-volume @DEFAULT_SINK@ +5%
232232+bindsym XF86AudioLowerVolume exec pactl set-sink-volume @DEFAULT_SINK@ -5%
233233+bindsym XF86AudioMute exec pactl set-sink-mute @DEFAULT_SINK@ toggle
234234+bindsym XF86AudioMicMute exec pactl set-source-mute @DEFAULT_SOURCE@ toggle
235235+bindsym XF86MonBrightnessDown exec brightnessctl set 5%-
236236+bindsym XF86MonBrightnessUp exec brightnessctl set 5%+
237237+bindsym XF86AudioPlay playerctl play-pause
238238+bindsym XF86AudioPause playerctl play-pause
239239+bindsym XF86AudioNext playerctl next
240240+bindsym XF86AudioPrev playerctl prev
241241+242242+#
243243+# padding mode
244244+#
245245+#mode "padding" {
246246+# bindsym plus gap set outer current plus 10
247247+# bindsym minus gap set outer current minus 10
248248+# # return to default mode
249249+# bindsym Return mode "default"
250250+# bindsym Escape mode "default"
251251+#}
252252+#
253253+#bindsym $mod+m mode "padding"
254254+255255+include powell
256256+257257+include /etc/sway/config.d/*
258258+include /home/noah/.config/sway/`hostname`
···11+# Ultrawide
22+#workspace $ws1 output DP-6
33+#workspace $ws2 output HDMI-A-1
44+55+# HDMI is the main output
66+output HDMI-A-1 pos 0 0
77+output DP-5 pos -430 1440
88+# Sometimes the DP identifier changes for some reason
99+output DP-6 pos -430 1440
+25
sway/powell
···11+#
22+# Status Bar:
33+#
44+# Read `man 5 sway-bar` for more information about this section.
55+bar {
66+ position top
77+88+ # When the status_command prints a new line to stdout, swaybar updates.
99+ # The default just shows the current date and time.
1010+ #status_command while date +'%Y-%m-%d %l:%M:%S %p'; do sleep 1; done
1111+ status_command i3status
1212+ colors {
1313+ # text color
1414+ statusline #DEDEE0
1515+ background #892243
1616+ inactive_workspace #444444 #444444 #DEDEE0
1717+ focused_workspace #799A91 #799A91 #444444
1818+ }
1919+}
2020+2121+# Colors
2222+client.focused #97A2A3 #799A91 #DEDEE0 #D5C9AD
2323+client.unfocused #C6AE8B #D5C9AD #444444 #C6AE8B
2424+client.focused_inactive #C6AE8B #7A9CA7 #DEDEE0 #C6AE8B
2525+client.urgent #C6AE8B #892243 #DEDEE0