From 2b1ad1160e7005d66f2b3805766b1aaf62842447 Mon Sep 17 00:00:00 2001 From: Evie Litherland-Smith Date: Fri, 14 Apr 2023 20:25:28 +0100 Subject: [PATCH] Update northstar sway config file --- .../env/config/sway/swayconfig-northstar | 272 ++++++++---------- nixos/home-manager/env/sway.nix | 2 +- nixos/home-manager/packages/env/bash.nix | 2 +- 3 files changed, 124 insertions(+), 152 deletions(-) diff --git a/nixos/home-manager/env/config/sway/swayconfig-northstar b/nixos/home-manager/env/config/sway/swayconfig-northstar index 8ed3dbbb..a8850c38 100644 --- a/nixos/home-manager/env/config/sway/swayconfig-northstar +++ b/nixos/home-manager/env/config/sway/swayconfig-northstar @@ -4,28 +4,12 @@ # # Read `man 5 sway` for a complete reference. -output DSI-1 scale 2.0 transform 270 -input type:touch map_to_output DSI-1 -input type:touchpad click_method clickfinger - -# this is for Lenovo's USI pen -input 10182:3632:hid-over-i2c_27C6:0E30 map_to_output DSI-1 - -bindsym Mod1+F6 exec brightnessctl s 5%- -bindsym Mod1+F7 exec brightnessctl s 5%+ - -default_border pixel 1 - ### Variables -# -# Logo key. Use Mod1 for Alt. set $mod Mod1 -# Home row direction keys, like vim set $left h set $down j set $up k set $right l -# Your preferred terminal emulator set $term foot # Your preferred application launcher # Note: pass the final command to swaymsg so that the resulting window can be opened @@ -35,156 +19,142 @@ set $menu rofi -show drun include /etc/sway/config-vars.d/* ### Output configuration -# -# Default wallpaper (more resolutions are available in /usr/share/backgrounds/sway/) -#output * bg /usr/share/backgrounds/sway/Sway_Wallpaper_Blue_1920x1080.png fill -# -# Example configuration: -# -# output HDMI-A-1 resolution 1920x1080 position 1920,0 -# -# You can get the names of your outputs by running: swaymsg -t get_outputs +output DSI-1 scale 2.0 transform 270 +input type:touch map_to_output DSI-1 +input type:touchpad click_method clickfinger -### Idle configuration -# -# Example configuration: -# -# exec swayidle -w \ -# timeout 300 'swaylock -f -c 000000' \ -# timeout 600 'swaymsg "output * dpms off"' resume 'swaymsg "output * dpms on"' \ -# before-sleep 'swaylock -f -c 000000' -# -# This will lock your screen after 300 seconds of inactivity, then turn off -# your displays after another 300 seconds, and turn your screens back on when -# resumed. It will also lock your screen before your computer goes to sleep. +# this is for Lenovo's USI pen +input 10182:3632:hid-over-i2c_27C6:0E30 map_to_output DSI-1 + +bindsym $mod+F6 exec brightnessctl s 5%- +bindsym $mod+F7 exec brightnessctl s 5%+ + + +gaps inner 5 +gaps outer 20 +default_border pixel 2 ### Input configuration +input * { + xkb_layout gb +} + # -# Example configuration: +# Workspaces # -# input "2:14:SynPS/2_Synaptics_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 -# Read `man 5 sway-input` for more information about this section. +set $ws1 "1" +set $ws2 "2" +set $ws3 "3" +set $ws4 "4" +set $ws5 "5" +set $ws6 "6" +set $ws7 "7" +set $ws8 "8" +set $ws9 "9" + +workspace $ws1 output DSI-1 +workspace $ws2 output DSI-1 +workspace $ws3 output DSI-1 +workspace $ws4 output DSI-1 +workspace $ws5 output DSI-1 +workspace $ws6 output DSI-1 +workspace $ws7 output DSI-1 +workspace $ws8 output DSI-1 + +assign [app_id="foot"] $ws1 +assign [class="(?i)firefox"] $ws2 +assign [class="(?i)chromium"] $ws2 +assign [class="org.kde.dolphin"] $ws3 +assign [class="thunderbird"] $ws4 +assign [class="Mailspring"] $ws4 +assign [class="Chromium-browser" instance="crx_faolnafnngnfdaknnbpnkhgohbobgegn"] $ws4 +assign [class="Element"] $ws5 +assign [class="Signal"] $ws5 +assign [class="Chromium-browser" instance="crx_cifhbcnohmdccbgoicgdjpfamggdegmo"] $ws4 +assign [class="Steam"] $ws6 +assign [class="Bitwarden"] $ws7 +assign [class="Nxplayer.bin"] $ws8 + +for_window [app_id="pavucontrol"] floating enable ### Key bindings -# -# Basics: -# - # Start a terminal - bindsym $mod+Return exec $term +bindsym $mod+Return exec $term +bindsym $mod+q kill +bindsym $mod+space exec $menu +bindsym $mod+e exec ~/.dotfiles/scripts/power-profiles +bindsym $mod+p exec ~/.dotfiles/scripts/powermenu +bindsym $mod+F1 exec swaylock +bindsym $mod+w exec chromium +bindsym $mod+f exec $term -e ranger +bindsym $mod+Shift+f exec dolphin - # Kill focused window - bindsym $mod+Shift+q kill +floating_modifier $mod normal - # Start your launcher - bindsym $mod+d exec $menu +# Reload the configuration file +bindsym $mod+Shift+r reload - # 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 +# Exit sway (logs you out of your Wayland session) +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' - # Reload the configuration file - bindsym $mod+Shift+c reload +# Move your focus around +bindsym $mod+$left focus left +bindsym $mod+$down focus down +bindsym $mod+$up focus up +bindsym $mod+$right focus right +# Or use $mod+[up|down|left|right] +bindsym $mod+Left focus left +bindsym $mod+Down focus down +bindsym $mod+Up focus up +bindsym $mod+Right focus right - # Exit sway (logs you out of your Wayland session) - 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' -# -# 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 - # Or use $mod+[up|down|left|right] - 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 +# Ditto, with arrow keys +bindsym $mod+Shift+Left move left +bindsym $mod+Shift+Down move down +bindsym $mod+Shift+Up move up +bindsym $mod+Shift+Right move 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 - # Ditto, with arrow keys - 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 - # Note: workspaces can have any name you want, not just numbers. - # We just use 1-10 as the default. -# -# Layout stuff: -# - # You can "split" the current object of your focus with - # $mod+b or $mod+v, for horizontal and vertical splits - # respectively. - bindsym $mod+b splith - bindsym $mod+v splitv +# Switch to workspace +bindsym $mod+1 workspace number $ws1 +bindsym $mod+2 workspace number $ws2 +bindsym $mod+3 workspace number $ws3 +bindsym $mod+4 workspace number $ws4 +bindsym $mod+5 workspace number $ws5 +bindsym $mod+6 workspace number $ws6 +bindsym $mod+7 workspace number $ws7 +bindsym $mod+8 workspace number $ws8 +bindsym $mod+9 workspace number $ws9 +bindsym $mod+0 workspace number $ws10 +# Move focused container to workspace +bindsym $mod+Shift+1 move container to workspace number $ws1 +bindsym $mod+Shift+2 move container to workspace number $ws2 +bindsym $mod+Shift+3 move container to workspace number $ws3 +bindsym $mod+Shift+4 move container to workspace number $ws4 +bindsym $mod+Shift+5 move container to workspace number $ws5 +bindsym $mod+Shift+6 move container to workspace number $ws6 +bindsym $mod+Shift+7 move container to workspace number $ws7 +bindsym $mod+Shift+8 move container to workspace number $ws8 +bindsym $mod+Shift+9 move container to workspace number $ws9 +bindsym $mod+Shift+0 move container to workspace number $ws10 +# Note: workspaces can have any name you want, not just numbers. +# We just use 1-10 as the default. - # Switch the current container between different layout styles - bindsym $mod+s layout stacking - bindsym $mod+w layout tabbed - bindsym $mod+e layout toggle split +# Make the current focus fullscreen +bindsym $mod+m fullscreen - # Make the current focus fullscreen - bindsym $mod+f fullscreen +# Toggle the current focus between tiling and floating mode +bindsym $mod+v floating toggle - # Toggle the current focus between tiling and floating mode - bindsym $mod+Shift+space floating toggle +# Move the currently focused window to the scratchpad +bindsym $mod+Shift+c move scratchpad - # Swap focus between the tiling area and the floating area - bindsym $mod+space focus mode_toggle - - # Move focus to the parent container - bindsym $mod+a focus parent -# -# 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 +# Show the next scratchpad window or hide the focused scratchpad window. +# If there are multiple scratchpad windows, this command cycles through them. +bindsym $mod+c scratchpad show # # Resizing containers: # @@ -218,6 +188,8 @@ bindsym $mod+r mode "resize" include /etc/sway/config.d/* exec dunst -exec hyprpaper -c ~/.dotfiles/nixos/home-manager/env/config/hypr/hyprpaper-northstar.conf +exec hyprpaper -c ~/.dotfiles/nixos/home-manager/env/config/hypr/hyprpaper-H0615.conf exec waybar -c ~/.dotfiles/nixos/home-manager/env/config/waybar/config-sway exec eww daemon + +# vim: ft=i3config diff --git a/nixos/home-manager/env/sway.nix b/nixos/home-manager/env/sway.nix index f5fdb880..889e54d6 100644 --- a/nixos/home-manager/env/sway.nix +++ b/nixos/home-manager/env/sway.nix @@ -1,7 +1,7 @@ { ... }: { imports = [ ./common-wayland.nix ]; - xdg.configFile."sway".source = ./config/sway; + #xdg.configFile."sway".source = ./config/sway; wayland.windowManager.sway = { enable = true; }; diff --git a/nixos/home-manager/packages/env/bash.nix b/nixos/home-manager/packages/env/bash.nix index 61a7b7a4..ac574b47 100644 --- a/nixos/home-manager/packages/env/bash.nix +++ b/nixos/home-manager/packages/env/bash.nix @@ -6,7 +6,7 @@ enable = true; shellAliases = { hms = "home-manager switch -b backup -f $HOME/.dotfiles/nixos/home-manager/northstar-xenia.nix"; - esway = "cd; sway -c $HOME/.dotfiles/nixos/home-manager/env/config/sway/swayconfig"; + esway = "cd; sway -c $HOME/.dotfiles/nixos/home-manager/env/config/sway/swayconfig-northstar"; }; }; }