diff options
| -rw-r--r-- | config/sway/config | 172 | ||||
| -rw-r--r-- | config/sway/default.nix | 2 | ||||
| -rwxr-xr-x | dist/bar.sh | 10 | ||||
| -rw-r--r-- | machines/x/configuration.nix | 6 | ||||
| -rw-r--r-- | machines/x/home.nix | 12 | ||||
| -rw-r--r-- | modules/core/bluetooth.nix | 2 | ||||
| -rw-r--r-- | modules/login.nix | 5 | ||||
| -rw-r--r-- | modules/wm_utils.nix | 1 | 
8 files changed, 193 insertions, 17 deletions
| diff --git a/config/sway/config b/config/sway/config new file mode 100644 index 0000000..f9dfa5b --- /dev/null +++ b/config/sway/config @@ -0,0 +1,172 @@ +### Variables +# +# Logo key. Use Mod1 for Alt. +set $mod Mod4 +# Home row direction keys, like vim +set $left h +set $down j +set $up k +set $right l +# Your preferred terminal emulator +set $term alacritty +# Your preferred application launcher +set $menu /config/dist/run.sh + +### Output configuration +# +output * bg /config/dist/wallpaper.png fill + +### Idle configuration +exec swayidle -w before-sleep 'swaylock -f' + +### Autostart +exec --no-startup-id autotiling-rs +exec --no-startup-id way-displays +exec --no-startup-id blueman-applet + +### Input configuration +input "1739:52865:DLL0C55:00_06CB:CE81_Touchpad" { +  dwt enabled +  tap enabled +  natural_scroll enabled +  middle_emulation enabled +} +# You can get the names of your inputs by running: swaymsg -t get_inputs + +### Key bindings +# Start a terminal +bindsym $mod+Shift+Return exec $term + +# Kill focused window +bindsym $mod+Shift+q kill + +# Start your launcher +bindsym $mod+space exec $menu + +# Drag floating windows by holding down $mod and left mouse button. +# Resize them with right mouse button + $mod. +# Despite the name, also works for non-floating windows. +# Change normal to inverse to use left mouse button for resizing and right +# mouse button for dragging. +floating_modifier $mod normal + +# Reload the configuration file +bindsym $mod+Shift+c reload + +# Exit sway (logs you out of your Wayland session) +bindsym $mod+Shift+b exec swaymsg exit +# +# Moving around: +# +# Move your focus around +bindsym $mod+$left focus left +bindsym $mod+$down focus down +bindsym $mod+$up focus up +bindsym $mod+$right focus right + +# Move the focused window with the same, but add Shift +bindsym $mod+Shift+$left move left +bindsym $mod+Shift+$down move down +bindsym $mod+Shift+$up move up +bindsym $mod+Shift+$right move right +# +# Workspaces: +# +# Switch to workspace +bindsym $mod+1 workspace number 1 +bindsym $mod+2 workspace number 2 +bindsym $mod+3 workspace number 3 +bindsym $mod+4 workspace number 4 +bindsym $mod+5 workspace number 5 +bindsym $mod+6 workspace number 6 +bindsym $mod+7 workspace number 7 +bindsym $mod+8 workspace number 8 +bindsym $mod+9 workspace number 9 +bindsym $mod+0 workspace number 10 +# Move focused container to workspace +bindsym $mod+Shift+1 move container to workspace number 1 +bindsym $mod+Shift+2 move container to workspace number 2 +bindsym $mod+Shift+3 move container to workspace number 3 +bindsym $mod+Shift+4 move container to workspace number 4 +bindsym $mod+Shift+5 move container to workspace number 5 +bindsym $mod+Shift+6 move container to workspace number 6 +bindsym $mod+Shift+7 move container to workspace number 7 +bindsym $mod+Shift+8 move container to workspace number 8 +bindsym $mod+Shift+9 move container to workspace number 9 +bindsym $mod+Shift+0 move container to workspace number 10 +# +# Layout stuff: +# +# Switch the current container between different layout styles +bindsym $mod+w layout tabbed + +# Make the current focus fullscreen +bindsym $mod+f fullscreen + +# Toggle the current focus between tiling and floating mode +bindsym $mod+Shift+space floating toggle +# +# Scratchpad: +# +# Sway has a "scratchpad", which is a bag of holding for windows. +# You can send windows there and get them back later. + +# Move the currently focused window to the scratchpad +bindsym $mod+Shift+minus move scratchpad + +# Show the next scratchpad window or hide the focused scratchpad window. +# If there are multiple scratchpad windows, this command cycles through them. +bindsym $mod+minus scratchpad show +# +# Resizing containers: +# +mode "resize" { +  # left will shrink the containers width +  # right will grow the containers width +  # up will shrink the containers height +  # down will grow the containers height +  bindsym $left resize shrink width 10px +  bindsym $down resize grow height 10px +  bindsym $up resize shrink height 10px +  bindsym $right resize grow width 10px + +  # Return to default mode +  bindsym Return mode "default" +  bindsym Escape mode "default" +} +bindsym $mod+r mode "resize" +# +# Utilities: +# +# Special keys to adjust volume via PulseAudio +bindsym --locked XF86AudioMute exec pactl set-sink-mute \@DEFAULT_SINK@ toggle +bindsym --locked XF86AudioLowerVolume exec pactl set-sink-volume \@DEFAULT_SINK@ -5% +bindsym --locked XF86AudioRaiseVolume exec pactl set-sink-volume \@DEFAULT_SINK@ +5% +bindsym --locked XF86AudioMicMute exec pactl set-source-mute \@DEFAULT_SOURCE@ toggle +# Special keys to adjust brightness via brightnessctl +bindsym --locked XF86MonBrightnessDown exec brightnessctl set 5%- +bindsym --locked XF86MonBrightnessUp exec brightnessctl set 5%+ +# Special key to take a screenshot with grim +bindsym Print exec grim -g "$(slurp)" - | wl-copy + +# +# Status Bar: +# +# Read `man 5 sway-bar` for more information about this section. +bar { +  position top + +  # When the status_command prints a new line to stdout, swaybar updates. +  # The default just shows the current date and time. +  status_command while /config/dist/bar.sh; do sleep 1; done + +  colors { +    statusline #607767 +    background #0f1212 +    active_workspace #000000 #607767 #0f1212 +    focused_workspace #000000 #607767 #0f1212 +    inactive_workspace #000000 #0f1212 #607767 +  } +} + +include @sysconfdir@/sway/config.d/* diff --git a/config/sway/default.nix b/config/sway/default.nix index b0906e0..2e67994 100644 --- a/config/sway/default.nix +++ b/config/sway/default.nix @@ -5,4 +5,6 @@      sway      autotiling-rs    ]; + +  home.file.".config/sway/config".source = ./config;  } diff --git a/dist/bar.sh b/dist/bar.sh index 156fe44..d1cd835 100755 --- a/dist/bar.sh +++ b/dist/bar.sh @@ -33,9 +33,9 @@ volume() {    pamixer --get-volume  } -# while [[ true ]]; do -#   dwlb -status all "| ^lm(alacritty -e nmtui-connect)  $(wifi)^lm() |   $(volume)% | $(battery)%$(charging) |   $(calendar) | λ |" -#   sleep 1 -# done +while [[ true ]]; do +  dwlb -status all "| ^lm(alacritty -e nmtui-connect)  $(wifi)^lm() |   $(volume)% | $(battery)%$(charging) |   $(calendar) | λ |" +  sleep 1 +done -echo "|   $(wifi) |   $(volume)% | $(battery)%$(charging) |   $(calendar) | λ |" +# echo "|   $(wifi) |   $(volume)% | $(battery)%$(charging) |   $(calendar) | λ |" diff --git a/machines/x/configuration.nix b/machines/x/configuration.nix index edfe0ba..5cf5313 100644 --- a/machines/x/configuration.nix +++ b/machines/x/configuration.nix @@ -27,10 +27,10 @@ in {      "virtualization.nix"      "remapcapslock.nix" -    # "wm_utils.nix" -    # "polkit.nix" +    "wm_utils.nix" +    "polkit.nix"      "login.nix" -    "plasma.nix" +    # "plasma.nix"    ]);    boot.loader = { diff --git a/machines/x/home.nix b/machines/x/home.nix index e50491b..80d1b96 100644 --- a/machines/x/home.nix +++ b/machines/x/home.nix @@ -54,13 +54,13 @@      "nvim"      # "qtile" -    # "dwl.nix" -    "plasma" +    # "plasma"      # "sway" -    # "themes.nix" -    # "way-displays" -    # "swaylock" -    # "dunst" +    "dwl.nix" +    "themes.nix" +    "way-displays" +    "swaylock" +    "dunst"      "alacritty"      "spotify-player" diff --git a/modules/core/bluetooth.nix b/modules/core/bluetooth.nix index fbd9b48..5e64d97 100644 --- a/modules/core/bluetooth.nix +++ b/modules/core/bluetooth.nix @@ -3,5 +3,5 @@  {    hardware.bluetooth.enable = true;    hardware.bluetooth.powerOnBoot = true; -  # services.blueman.enable = true; +  services.blueman.enable = true;  } diff --git a/modules/login.nix b/modules/login.nix index c439e52..5ec23cc 100644 --- a/modules/login.nix +++ b/modules/login.nix @@ -10,8 +10,9 @@      enable = true;      settings = {        default_session = { -        command = "tuigreet --time --remember --cmd \"startplasma-wayland\""; -        # command = "tuigreet --time --remember --cmd \"dwl -s dwlb\""; +        # command = "tuigreet --time --remember --cmd \"sway\""; +        # command = "tuigreet --time --remember --cmd \"startplasma-wayland\""; +        command = "tuigreet --time --remember --cmd \"dwl -s dwlb\"";          user = "greeter";        };      }; diff --git a/modules/wm_utils.nix b/modules/wm_utils.nix index e29b287..0b219e0 100644 --- a/modules/wm_utils.nix +++ b/modules/wm_utils.nix @@ -27,6 +27,7 @@    environment.variables = {      XCURSOR_SIZE = "16"; +    WLR_DRM_DEVICES = "/dev/dri/card1";    };    services.dbus.enable = true; | 
