home/sway: make startup (and xwayland) optional - intent
This commit is contained in:
		
							parent
							
								
									61f614fb9c
								
							
						
					
					
						commit
						d26623cc9a
					
				
							
								
								
									
										632
									
								
								home/sway.nix
								
								
								
								
							
							
						
						
									
										632
									
								
								home/sway.nix
								
								
								
								
							|  | @ -32,349 +32,349 @@ in | |||
| 	}; | ||||
| 
 | ||||
| 	config = { | ||||
| 	home.sessionVariables = { | ||||
| 		XDG_CURRENT_DESKTOP = "sway"; | ||||
| 		MOZ_ENABLE_WAYLAND = "1"; | ||||
| 	}; | ||||
| 		home.sessionVariables = { | ||||
| 			XDG_CURRENT_DESKTOP = "sway"; | ||||
| 			MOZ_ENABLE_WAYLAND = "1"; | ||||
| 		}; | ||||
| 
 | ||||
| 	home.packages = with pkgs; [ | ||||
| 		# sway | ||||
| 		# alacritty | ||||
| 		# swayidle | ||||
| 		# swaylock-effects | ||||
| 		# mako | ||||
| 		# wl-clipboard | ||||
| 		#- xdg-desktop-portal-wlr | ||||
| 		# bemenu | ||||
| 		# i3blocks | ||||
| 		# acpi | ||||
| 		# lm_sensors | ||||
| 		# ponymix | ||||
| 		# brightnessctl | ||||
| 		# gammastep | ||||
| 		# grim | ||||
| 		# slurp | ||||
| 		# kdeconnect | ||||
| 		# wdisplays | ||||
| 	]; | ||||
| 		home.packages = with pkgs; [ | ||||
| 			# sway | ||||
| 			# alacritty | ||||
| 			# swayidle | ||||
| 			# swaylock-effects | ||||
| 			# mako | ||||
| 			# wl-clipboard | ||||
| 			#- xdg-desktop-portal-wlr | ||||
| 			# bemenu | ||||
| 			# i3blocks | ||||
| 			# acpi | ||||
| 			# lm_sensors | ||||
| 			# ponymix | ||||
| 			# brightnessctl | ||||
| 			# gammastep | ||||
| 			# grim | ||||
| 			# slurp | ||||
| 			# kdeconnect | ||||
| 			# wdisplays | ||||
| 		]; | ||||
| 
 | ||||
| 	wayland.windowManager.sway =  | ||||
| 	let | ||||
| 		ws1 = "1💬"; | ||||
| 		#ws2 = "2📝"; | ||||
| 		ws2 = "2🌟"; | ||||
| 		ws3 = "3🍁"; | ||||
| 		ws4 = "4🍀"; | ||||
| 		ws5 = "5🌈"; | ||||
| 		ws6 = "6💎"; | ||||
| 		ws7 = "7🎥"; | ||||
| 		ws8 = "8🌍"; | ||||
| 		ws9 = "9🔒"; | ||||
| 		ws10 = "10🌀"; | ||||
| 		wayland.windowManager.sway =  | ||||
| 		let | ||||
| 			ws1 = "1💬"; | ||||
| 			#ws2 = "2📝"; | ||||
| 			ws2 = "2🌟"; | ||||
| 			ws3 = "3🍁"; | ||||
| 			ws4 = "4🍀"; | ||||
| 			ws5 = "5🌈"; | ||||
| 			ws6 = "6💎"; | ||||
| 			ws7 = "7🎥"; | ||||
| 			ws8 = "8🌍"; | ||||
| 			ws9 = "9🔒"; | ||||
| 			ws10 = "10🌀"; | ||||
| 
 | ||||
| 		white = "#ffffff"; | ||||
| 		cyan = "#00afd7"; | ||||
| 		acqua = "#00d787"; | ||||
| 		violet = "#800080"; | ||||
| 		wine = "#72003e"; | ||||
| 		magenta = "#af005f"; | ||||
| 		orange = "#ff8700"; | ||||
| 		silver = "#e4e4e4"; | ||||
| 		gray = "#353535"; | ||||
| 		elegant = "#1b1d1e"; | ||||
| 		# transparent = "#000000"; | ||||
| 		transparent = "#000000b2"; | ||||
| 			white = "#ffffff"; | ||||
| 			cyan = "#00afd7"; | ||||
| 			acqua = "#00d787"; | ||||
| 			violet = "#800080"; | ||||
| 			wine = "#72003e"; | ||||
| 			magenta = "#af005f"; | ||||
| 			orange = "#ff8700"; | ||||
| 			silver = "#e4e4e4"; | ||||
| 			gray = "#353535"; | ||||
| 			elegant = "#1b1d1e"; | ||||
| 			# transparent = "#000000"; | ||||
| 			transparent = "#000000b2"; | ||||
| 
 | ||||
| 		modifier = "Mod4"; | ||||
| 		menu = "bemenu-run -i -p 'Run:'  --fn 'pango:monospace 7'"; | ||||
| 		# config.wayland.windowManager.sway.config.modifier; | ||||
| 	in { | ||||
| 		enable = true; | ||||
| 		xwayland = cfg.xwayland; | ||||
| 		config = { | ||||
| 			input = { | ||||
|         			"*" = { | ||||
| 					xkb_layout = "de"; | ||||
| 					xkb_model = "chromebook"; | ||||
| 					# no click needed | ||||
| 					tap = "enabled"; | ||||
| 			modifier = "Mod4"; | ||||
| 			menu = "bemenu-run -i -p 'Run:'  --fn 'pango:monospace 7'"; | ||||
| 			# config.wayland.windowManager.sway.config.modifier; | ||||
| 		in { | ||||
| 			enable = true; | ||||
| 			xwayland = cfg.xwayland; | ||||
| 			config = { | ||||
| 				input = { | ||||
| 					"*" = { | ||||
| 						xkb_layout = "de"; | ||||
| 						xkb_model = "chromebook"; | ||||
| 						# no click needed | ||||
| 						tap = "enabled"; | ||||
| 					}; | ||||
| 					"1452:544:Apple,_Inc_Apple_Keyboard" = { | ||||
| 						xkb_layout = "us"; | ||||
| 					}; | ||||
| 				}; | ||||
| 				"1452:544:Apple,_Inc_Apple_Keyboard" = { | ||||
| 					xkb_layout = "us"; | ||||
|         			}; | ||||
| 			}; | ||||
| 			output = { | ||||
| 				"*".bg = "~/.config/wallpaper.png fill"; | ||||
| 				# fireThink | ||||
| 				"Unknown 0x226D 0x00000000" = { | ||||
| 					enable = ""; | ||||
| 				output = { | ||||
| 					"*".bg = "~/.config/wallpaper.png fill"; | ||||
| 					# fireThink | ||||
| 					"Unknown 0x226D 0x00000000" = { | ||||
| 						enable = ""; | ||||
| 					}; | ||||
| 					# fireG0 | ||||
| 					"Unknown 0x405C 0x00000000" = { | ||||
| 						position = "0 0"; | ||||
| 						# scale = "0.7"; | ||||
| 						# resolution = "1920x1080"; | ||||
| 						resolution = "1366x768@60Hz"; | ||||
| 					}; | ||||
| 					# fireEmerald | ||||
| 					"Unknown 0x364C 0x00000000" = { | ||||
| 						position = "0 0"; | ||||
| 						scale = "1.25"; | ||||
| 					}; | ||||
| 					"Goldstar Company Ltd LG HDR 4K 0x0000655D" = { | ||||
| 						position = "3000 0"; | ||||
| 						enable = ""; | ||||
| 						scale = "1.0"; | ||||
| 						# disable = true; | ||||
| 						# resolution = "3840x2160@30Hz"; | ||||
| 						resolution = "3840x2160"; | ||||
| 					}; | ||||
| 					"HEADLESS-1" = { | ||||
| 						resolution = "2560x1440"; | ||||
| 					}; | ||||
| 					"DP-1" = { | ||||
| 						position = "3000 0"; | ||||
| 						# resolution = "2560x1440"; | ||||
| 					}; | ||||
| 					# "DP-2" = { | ||||
| 					# 	position = "1920 0"; | ||||
| 					# 	# position = "4480 0"; | ||||
| 					# 	# resolution = "1280x1024"; | ||||
| 					# }; | ||||
| 				}; | ||||
| 				# fireG0 | ||||
| 				"Unknown 0x405C 0x00000000" = { | ||||
| 					position = "0 0"; | ||||
| 					# scale = "0.7"; | ||||
| 					# resolution = "1920x1080"; | ||||
| 					resolution = "1366x768@60Hz"; | ||||
| 				}; | ||||
| 				# fireEmerald | ||||
| 				"Unknown 0x364C 0x00000000" = { | ||||
| 					position = "0 0"; | ||||
| 					scale = "1.25"; | ||||
| 				}; | ||||
| 				"Goldstar Company Ltd LG HDR 4K 0x0000655D" = { | ||||
| 					position = "3000 0"; | ||||
| 					enable = ""; | ||||
| 					scale = "1.0"; | ||||
|         				# disable = true; | ||||
| 					# resolution = "3840x2160@30Hz"; | ||||
| 					resolution = "3840x2160"; | ||||
|         			}; | ||||
| 				"HEADLESS-1" = { | ||||
| 					resolution = "2560x1440"; | ||||
| 				}; | ||||
| 				"DP-1" = { | ||||
|         				position = "3000 0"; | ||||
|                 			# resolution = "2560x1440"; | ||||
|         			}; | ||||
| 				# "DP-2" = { | ||||
| 				# 	position = "1920 0"; | ||||
| 				# 	# position = "4480 0"; | ||||
| 				# 	# resolution = "1280x1024"; | ||||
| 				# }; | ||||
| 			}; | ||||
| 			modifier = "${modifier}"; | ||||
| 			menu = "${menu}"; | ||||
| 			terminal = "alacritty"; | ||||
| 			# fonts = { names = ["monospace"]; style = "monospace"; size = 7;}; | ||||
| 			fonts = [ "pango:monospace 7" ]; | ||||
| 			colors = { | ||||
| 				focused =  { background = "${cyan}"; border = "${cyan}"; childBorder = "${cyan}"; indicator = "${white}"; text = "${elegant}"; }; | ||||
| 				focusedInactive =  { background = "${gray}"; border = "${gray}"; childBorder = "${gray}"; indicator = "${magenta}"; text = "${cyan}"; }; | ||||
| 				unfocused =  { background = "${elegant}"; border = "${elegant}"; childBorder = "${elegant}"; indicator = "${white}"; text = "${orange}"; }; | ||||
| 				urgent =  { background = "${magenta}"; border = "${magenta}"; childBorder = "${magenta}"; indicator = "${magenta}"; text = "${silver}"; }; | ||||
| 				placeholder =  { background = "${magenta}"; border = "${magenta}"; childBorder = "${magenta}"; indicator = "${white}"; text = "${silver}"; }; | ||||
| 				background = "${transparent}"; | ||||
| 			}; | ||||
| 			bars = [{ | ||||
| 				position = "top"; | ||||
| 				statusCommand = "i3blocks"; | ||||
| 				trayOutput = "*"; | ||||
| 				modifier = "${modifier}"; | ||||
| 				menu = "${menu}"; | ||||
| 				terminal = "alacritty"; | ||||
| 				# fonts = { names = ["monospace"]; style = "monospace"; size = 7;}; | ||||
| 				fonts = [ "pango:monospace 7" ]; | ||||
| 				colors = { | ||||
| 					statusline = "${white}"; | ||||
| 					# focusedStatusline = "${white}"; | ||||
| 					background = "${elegant}"; | ||||
| 					# focusedBackground = "${transparent}"; | ||||
| 					activeWorkspace = { background = "${cyan}"; border = "${gray}"; text = "${white}"; }; | ||||
| 					focusedWorkspace = { background = "${cyan}"; border = "${cyan}"; text = "${white}"; }; | ||||
| 					inactiveWorkspace = { background = "${transparent}"; border = "${elegant}"; text = "${orange}"; }; | ||||
| 					urgentWorkspace = { background = "${magenta}"; border = "${magenta}"; text = "${white}"; }; | ||||
| 					bindingMode = { background = "${orange}"; border = "${orange}"; text = "${white}"; }; | ||||
| 					focused =  { background = "${cyan}"; border = "${cyan}"; childBorder = "${cyan}"; indicator = "${white}"; text = "${elegant}"; }; | ||||
| 					focusedInactive =  { background = "${gray}"; border = "${gray}"; childBorder = "${gray}"; indicator = "${magenta}"; text = "${cyan}"; }; | ||||
| 					unfocused =  { background = "${elegant}"; border = "${elegant}"; childBorder = "${elegant}"; indicator = "${white}"; text = "${orange}"; }; | ||||
| 					urgent =  { background = "${magenta}"; border = "${magenta}"; childBorder = "${magenta}"; indicator = "${magenta}"; text = "${silver}"; }; | ||||
| 					placeholder =  { background = "${magenta}"; border = "${magenta}"; childBorder = "${magenta}"; indicator = "${white}"; text = "${silver}"; }; | ||||
| 					background = "${transparent}"; | ||||
| 				}; | ||||
| 			}]; | ||||
| 			gaps = { | ||||
| 				inner = 2; | ||||
| 				outer = 0; | ||||
| 				smartGaps = true; | ||||
| 				smartBorders = "no_gaps"; | ||||
| 			}; | ||||
| 			modes.resize = { | ||||
| 				Left = "resize shrink width 10 px or 10 ppt"; | ||||
| 				Down = "resize grow height 10 px or 10 ppt"; | ||||
| 				Up = "resize shrink height 10 px or 10 ppt"; | ||||
| 				Right = "resize grow width 10 px or 10 ppt"; | ||||
| 				bars = [{ | ||||
| 					position = "top"; | ||||
| 					statusCommand = "i3blocks"; | ||||
| 					trayOutput = "*"; | ||||
| 					colors = { | ||||
| 						statusline = "${white}"; | ||||
| 						# focusedStatusline = "${white}"; | ||||
| 						background = "${elegant}"; | ||||
| 						# focusedBackground = "${transparent}"; | ||||
| 						activeWorkspace = { background = "${cyan}"; border = "${gray}"; text = "${white}"; }; | ||||
| 						focusedWorkspace = { background = "${cyan}"; border = "${cyan}"; text = "${white}"; }; | ||||
| 						inactiveWorkspace = { background = "${transparent}"; border = "${elegant}"; text = "${orange}"; }; | ||||
| 						urgentWorkspace = { background = "${magenta}"; border = "${magenta}"; text = "${white}"; }; | ||||
| 						bindingMode = { background = "${orange}"; border = "${orange}"; text = "${white}"; }; | ||||
| 					}; | ||||
| 				}]; | ||||
| 				gaps = { | ||||
| 					inner = 2; | ||||
| 					outer = 0; | ||||
| 					smartGaps = true; | ||||
| 					smartBorders = "no_gaps"; | ||||
| 				}; | ||||
| 				modes.resize = { | ||||
| 					Left = "resize shrink width 10 px or 10 ppt"; | ||||
| 					Down = "resize grow height 10 px or 10 ppt"; | ||||
| 					Up = "resize shrink height 10 px or 10 ppt"; | ||||
| 					Right = "resize grow width 10 px or 10 ppt"; | ||||
| 
 | ||||
| 				j = "resize grow height 10 px or 10 ppt"; | ||||
| 				k = "resize shrink height 10 px or 10 ppt"; | ||||
| 				l = "resize grow width 10 px or 10 ppt"; | ||||
| 				h = "resize shrink width 10 px or 10 ppt"; | ||||
| 					j = "resize grow height 10 px or 10 ppt"; | ||||
| 					k = "resize shrink height 10 px or 10 ppt"; | ||||
| 					l = "resize grow width 10 px or 10 ppt"; | ||||
| 					h = "resize shrink width 10 px or 10 ppt"; | ||||
| 
 | ||||
| 				Return = "mode default"; | ||||
| 				Escape = "mode default"; | ||||
| 				"${modifier}+r" = "mode default"; | ||||
| 			}; | ||||
| 			workspaceAutoBackAndForth = true; | ||||
| 			keybindings = { | ||||
| 				"${modifier}+Return" = "exec alacritty"; | ||||
| 				# "${modifier}+Return" = "exec ${config.wayland.windowManager.sway.config.terminal}"; | ||||
| 				"${modifier}+Shift+c" = "reload"; | ||||
| 				"${modifier}+Shift+r" = "restart"; | ||||
| 				"${modifier}+c" = "kill"; | ||||
| 				"${modifier}+Shift+e" = "exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway?' -b 'Yes, exit sway' 'swaymsg exit'"; | ||||
| 					Return = "mode default"; | ||||
| 					Escape = "mode default"; | ||||
| 					"${modifier}+r" = "mode default"; | ||||
| 				}; | ||||
| 				workspaceAutoBackAndForth = true; | ||||
| 				keybindings = { | ||||
| 					"${modifier}+Return" = "exec alacritty"; | ||||
| 					# "${modifier}+Return" = "exec ${config.wayland.windowManager.sway.config.terminal}"; | ||||
| 					"${modifier}+Shift+c" = "reload"; | ||||
| 					"${modifier}+Shift+r" = "restart"; | ||||
| 					"${modifier}+c" = "kill"; | ||||
| 					"${modifier}+Shift+e" = "exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway?' -b 'Yes, exit sway' 'swaymsg exit'"; | ||||
| 
 | ||||
| 				"${modifier}+Shift+h" = "split h"; | ||||
| 				"${modifier}+Shift+v" = "split v"; | ||||
| 					"${modifier}+Shift+h" = "split h"; | ||||
| 					"${modifier}+Shift+v" = "split v"; | ||||
| 
 | ||||
| 				"${modifier}+z" = "fullscreen toggle"; | ||||
| 					"${modifier}+z" = "fullscreen toggle"; | ||||
| 
 | ||||
| 				"${modifier}+s" = "layout stacking"; | ||||
| 				"${modifier}+w" = "layout tabbed"; | ||||
| 				"${modifier}+e" = "layout toggle split"; | ||||
| 					"${modifier}+s" = "layout stacking"; | ||||
| 					"${modifier}+w" = "layout tabbed"; | ||||
| 					"${modifier}+e" = "layout toggle split"; | ||||
| 
 | ||||
| 				"${modifier}+Shift+space" = "floating toggle"; | ||||
| 				"${modifier}+space" = "focus mode_toggle"; | ||||
| 				"${modifier}+a" = "focus parent"; | ||||
| 				"${modifier}+d" = "focus child"; | ||||
| 				"${modifier}+v" = "exec ${menu}"; | ||||
| 					"${modifier}+Shift+space" = "floating toggle"; | ||||
| 					"${modifier}+space" = "focus mode_toggle"; | ||||
| 					"${modifier}+a" = "focus parent"; | ||||
| 					"${modifier}+d" = "focus child"; | ||||
| 					"${modifier}+v" = "exec ${menu}"; | ||||
| 
 | ||||
| 				"${modifier}+x" = "sticky toggle"; | ||||
| 				"${modifier}+Shift+x" = "move workspace to output left"; | ||||
| 					"${modifier}+x" = "sticky toggle"; | ||||
| 					"${modifier}+Shift+x" = "move workspace to output left"; | ||||
| 
 | ||||
| 				"${modifier}+r" = "mode resize"; | ||||
| 					"${modifier}+r" = "mode resize"; | ||||
| 
 | ||||
| 				# window | ||||
| 				"${modifier}+Left" = "focus left"; | ||||
| 				"${modifier}+Down" = "focus down"; | ||||
| 				"${modifier}+Up" = "focus up"; | ||||
| 				"${modifier}+Right" = "focus right"; | ||||
| 				"${modifier}+j" = "focus left"; | ||||
| 				"${modifier}+k" = "focus down"; | ||||
| 				"${modifier}+l" = "focus up"; | ||||
| 				"${modifier}+odiaeresis" = "focus right"; | ||||
| 					# window | ||||
| 					"${modifier}+Left" = "focus left"; | ||||
| 					"${modifier}+Down" = "focus down"; | ||||
| 					"${modifier}+Up" = "focus up"; | ||||
| 					"${modifier}+Right" = "focus right"; | ||||
| 					"${modifier}+j" = "focus left"; | ||||
| 					"${modifier}+k" = "focus down"; | ||||
| 					"${modifier}+l" = "focus up"; | ||||
| 					"${modifier}+odiaeresis" = "focus right"; | ||||
| 
 | ||||
| 				"${modifier}+Shift+Left" = "move left"; | ||||
| 				"${modifier}+Shift+Down" = "move down"; | ||||
| 				"${modifier}+Shift+Up" = "move up"; | ||||
| 				"${modifier}+Shift+Right" = "move right"; | ||||
| 				"${modifier}+Shift+j" = "move left"; | ||||
| 				"${modifier}+Shift+k" = "move down"; | ||||
| 				"${modifier}+Shift+l" = "move up"; | ||||
| 				"${modifier}+Shift+odiaeresis" = "move right"; | ||||
| 					"${modifier}+Shift+Left" = "move left"; | ||||
| 					"${modifier}+Shift+Down" = "move down"; | ||||
| 					"${modifier}+Shift+Up" = "move up"; | ||||
| 					"${modifier}+Shift+Right" = "move right"; | ||||
| 					"${modifier}+Shift+j" = "move left"; | ||||
| 					"${modifier}+Shift+k" = "move down"; | ||||
| 					"${modifier}+Shift+l" = "move up"; | ||||
| 					"${modifier}+Shift+odiaeresis" = "move right"; | ||||
| 
 | ||||
| 				# workspace | ||||
| 				"${modifier}+1" = "workspace number ${ws1}"; | ||||
| 				"${modifier}+2" = "workspace number ${ws2}"; | ||||
| 				"${modifier}+3" = "workspace number ${ws3}"; | ||||
| 				"${modifier}+4" = "workspace number ${ws4}"; | ||||
| 				"${modifier}+5" = "workspace number ${ws5}"; | ||||
| 				"${modifier}+6" = "workspace number ${ws6}"; | ||||
| 				"${modifier}+7" = "workspace number ${ws7}"; | ||||
| 				"${modifier}+8" = "workspace number ${ws8}"; | ||||
| 				"${modifier}+9" = "workspace number ${ws9}"; | ||||
| 				"${modifier}+0" = "workspace number ${ws10}"; | ||||
| 					# workspace | ||||
| 					"${modifier}+1" = "workspace number ${ws1}"; | ||||
| 					"${modifier}+2" = "workspace number ${ws2}"; | ||||
| 					"${modifier}+3" = "workspace number ${ws3}"; | ||||
| 					"${modifier}+4" = "workspace number ${ws4}"; | ||||
| 					"${modifier}+5" = "workspace number ${ws5}"; | ||||
| 					"${modifier}+6" = "workspace number ${ws6}"; | ||||
| 					"${modifier}+7" = "workspace number ${ws7}"; | ||||
| 					"${modifier}+8" = "workspace number ${ws8}"; | ||||
| 					"${modifier}+9" = "workspace number ${ws9}"; | ||||
| 					"${modifier}+0" = "workspace number ${ws10}"; | ||||
| 
 | ||||
| 				"${modifier}+Shift+1" = "move container to workspace number ${ws1}"; | ||||
| 				"${modifier}+Shift+2" = "move container to workspace number ${ws2}"; | ||||
| 				"${modifier}+Shift+3" = "move container to workspace number ${ws3}"; | ||||
| 				"${modifier}+Shift+4" = "move container to workspace number ${ws4}"; | ||||
| 				"${modifier}+Shift+5" = "move container to workspace number ${ws5}"; | ||||
| 				"${modifier}+Shift+6" = "move container to workspace number ${ws6}"; | ||||
| 				"${modifier}+Shift+7" = "move container to workspace number ${ws7}"; | ||||
| 				"${modifier}+Shift+8" = "move container to workspace number ${ws8}"; | ||||
| 				"${modifier}+Shift+9" = "move container to workspace number ${ws9}"; | ||||
| 				"${modifier}+Shift+0" = "move container to workspace number ${ws10}"; | ||||
| 					"${modifier}+Shift+1" = "move container to workspace number ${ws1}"; | ||||
| 					"${modifier}+Shift+2" = "move container to workspace number ${ws2}"; | ||||
| 					"${modifier}+Shift+3" = "move container to workspace number ${ws3}"; | ||||
| 					"${modifier}+Shift+4" = "move container to workspace number ${ws4}"; | ||||
| 					"${modifier}+Shift+5" = "move container to workspace number ${ws5}"; | ||||
| 					"${modifier}+Shift+6" = "move container to workspace number ${ws6}"; | ||||
| 					"${modifier}+Shift+7" = "move container to workspace number ${ws7}"; | ||||
| 					"${modifier}+Shift+8" = "move container to workspace number ${ws8}"; | ||||
| 					"${modifier}+Shift+9" = "move container to workspace number ${ws9}"; | ||||
| 					"${modifier}+Shift+0" = "move container to workspace number ${ws10}"; | ||||
| 
 | ||||
| 				"XF86AudioLowerVolume" =  "exec ponymix -N decrease 5"; | ||||
| 				"${modifier}+XF86AudioLowerVolume" = ''exec "ponymix -N -t source -d $(ponymix -t source list | grep source | grep -v -E '(monitor|fallback)' | sed -r 's/source\s([0-9]+):.*/\1/') decrease 5"''; | ||||
| 				"XF86AudioRaiseVolume" = "exec ponymix -N increase 5"; | ||||
| 				"${modifier}+XF86AudioRaiseVolume" = ''exec "ponymix -N -t source -d $(ponymix -t source list | grep source | grep -v -E '(monitor|fallback)' | sed -r 's/source\s([0-9]+):.*/\1/') increase 5"''; | ||||
| 					"XF86AudioLowerVolume" =  "exec ponymix -N decrease 5"; | ||||
| 					"${modifier}+XF86AudioLowerVolume" = ''exec "ponymix -N -t source -d $(ponymix -t source list | grep source | grep -v -E '(monitor|fallback)' | sed -r 's/source\s([0-9]+):.*/\1/') decrease 5"''; | ||||
| 					"XF86AudioRaiseVolume" = "exec ponymix -N increase 5"; | ||||
| 					"${modifier}+XF86AudioRaiseVolume" = ''exec "ponymix -N -t source -d $(ponymix -t source list | grep source | grep -v -E '(monitor|fallback)' | sed -r 's/source\s([0-9]+):.*/\1/') increase 5"''; | ||||
| 
 | ||||
| 				"XF86AudioMute" = "exec ponymix -N toggle"; | ||||
| 	 | ||||
| 				"${modifier}+XF86AudioMute" = ''exec "ponymix -N -t source -d $(ponymix -t source list | grep source | grep -v -E '(monitor|fallback)' | sed -r 's/source\s([0-9]+):.*/\1/') toggle"''; | ||||
| 				"XF86AudioMicMute" = ''exec "ponymix -N -t source -d $(ponymix -t source list | grep source | grep -v -E '(monitor|fallback)' | sed -r 's/source\s([0-9]+):.*/\1/') toggle"''; | ||||
| 					"XF86AudioMute" = "exec ponymix -N toggle"; | ||||
| 		 | ||||
| 					"${modifier}+XF86AudioMute" = ''exec "ponymix -N -t source -d $(ponymix -t source list | grep source | grep -v -E '(monitor|fallback)' | sed -r 's/source\s([0-9]+):.*/\1/') toggle"''; | ||||
| 					"XF86AudioMicMute" = ''exec "ponymix -N -t source -d $(ponymix -t source list | grep source | grep -v -E '(monitor|fallback)' | sed -r 's/source\s([0-9]+):.*/\1/') toggle"''; | ||||
| 
 | ||||
| 				"XF86MonBrightnessUp" = ''exec "sh ~/.local/bin/key_light.sh up"''; | ||||
| 				"XF86MonBrightnessDown" = ''exec "sh ~/.local/bin/key_light.sh down"''; | ||||
| 				"XF86Display" = ''exec "swaymsg output eDP-1  toggle"''; | ||||
| 					"XF86MonBrightnessUp" = ''exec "sh ~/.local/bin/key_light.sh up"''; | ||||
| 					"XF86MonBrightnessDown" = ''exec "sh ~/.local/bin/key_light.sh down"''; | ||||
| 					"XF86Display" = ''exec "swaymsg output eDP-1  toggle"''; | ||||
| 
 | ||||
| 				"${modifier}+p" = "exec passmenu"; | ||||
| 					"${modifier}+p" = "exec passmenu"; | ||||
| 
 | ||||
| 				"${modifier}+F11" = ''exec "swaylock -SeFfk --clock --effect-blur 7x5 --effect-vignette 0.5:0.5 --grace 2 --fade-in 0.2 --submit-on-touch"''; | ||||
| 				"Print" = ''exec "grim -g \"$(slurp)\""''; | ||||
| 			}; | ||||
| 			assigns = { | ||||
| 				"${ws1}" = [ | ||||
| 					{ app_id = "(?i)empathy"; } | ||||
| 					{ app_id = "(?i)gajim"; } | ||||
| 					{ app_id = "(?i)dino"; } | ||||
| 					{ app_id = "(?i)pidgin"; } | ||||
| 					"${modifier}+F11" = ''exec "swaylock -SeFfk --clock --effect-blur 7x5 --effect-vignette 0.5:0.5 --grace 2 --fade-in 0.2 --submit-on-touch"''; | ||||
| 					"Print" = ''exec "grim -g \"$(slurp)\""''; | ||||
| 				}; | ||||
| 				assigns = { | ||||
| 					"${ws1}" = [ | ||||
| 						{ app_id = "(?i)empathy"; } | ||||
| 						{ app_id = "(?i)gajim"; } | ||||
| 						{ app_id = "(?i)dino"; } | ||||
| 						{ app_id = "(?i)pidgin"; } | ||||
| 					]; | ||||
| 					"${ws2}" = [ | ||||
| 						{ app_id = "(?i)thunderbird"; } | ||||
| 						{ app_id = "(?i)evolution"; } | ||||
| 					]; | ||||
| 					"${ws4}" = [ | ||||
| 						{ app_id = "(?i)atril"; } | ||||
| 						{ app_id = "(?i)evince"; } | ||||
| 					]; | ||||
| 					"${ws7}" = [ | ||||
| 						{ app_id = "(?i)mpv"; } | ||||
| 					]; | ||||
| 					"${ws8}" = [ | ||||
| 						{ app_id = "(?i)firefox"; } | ||||
| 						{ app_id = "(?i)firefoxdeveloperedition"; } | ||||
| 					]; | ||||
| 				}; | ||||
| 				floating = { | ||||
| 					modifier = modifier; | ||||
| 				}; | ||||
| 				window = { | ||||
| 					border = 1; | ||||
| 					# hideEdgeBorders = "smart_no_gaps"; | ||||
| 					hideEdgeBorders = "smart"; | ||||
| 					commands = [ | ||||
| 						{ command = "move to scratchpad"; criteria = { title = "Firefox.* Sharing Indicator"; }; } | ||||
| 						{ command = "sticky enable"; criteria = { title = "Picture-in-Picture"; }; } | ||||
| 						{ command = "floating enable"; criteria = { title = "Picture-in-Picture"; }; } | ||||
| 						{ command = "floating enable"; criteria = { title = "Extension: \(Tree Style Tab\) - .*"; }; } | ||||
| 					]; | ||||
| 				}; | ||||
| 				startup = [ | ||||
| 					{ command = "systemctl --user import-environment DISPLAY WAYLAND_DISPLAY SWAYSOCK"; } | ||||
| 					{ command = "hash dbus-update-activation-environment 2>/dev/null &&  dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK" ; } | ||||
| 					{ command = "swayidle -w \\ | ||||
| 						timeout 300 'swaylock -SeFfk --clock --effect-blur 7x5 --effect-vignette 0.5:0.5 --grace 2 --fade-in 0.2 --submit-on-touch' \\ | ||||
| 						timeout 600 'swaymsg output * dpms off' \\ | ||||
| 						resume 'swaymsg output * dpms on' \\ | ||||
| 						before-sleep 'swaylock -SeFfk --clock --effect-blur 7x5 --effect-vignette 0.5:0.5 --grace 2 --fade-in 0.2 --submit-on-touch'"; } | ||||
| 					{ command = "mako"; } | ||||
| 					#{ command = "kanshi"; } | ||||
| 					# indicator | ||||
| 					{ command = "networkd-notify"; } | ||||
| 					# needs x11 | ||||
| 					#{ command = "udiskie -t"; } | ||||
| 					#{ command = "modem-manager-gui -i"; } | ||||
| 					#{ command = "nm-applet"; } | ||||
| 					# apps | ||||
| 					{ command = "firefox"; } | ||||
| 					#{ command = "firefoxdeveloperedition"; } | ||||
| 				] ++ lib.optionals (cfg.KDEConnect) [ | ||||
| 					{ command = "/usr/lib/kdeconnectd"; } | ||||
| 					{ command = "/home/genofire/.nix-profile/libexec/kdeconnectd"; } | ||||
| 					{ command = "kdeconnect-indicator"; } | ||||
| 				] ++ lib.optionals (cfg.mail) [ | ||||
| 					{ command = "thunderbird"; } | ||||
| 				] ++ lib.optionals (cfg.nextcloud) [ | ||||
| 					{ command = "nextcloud"; } | ||||
| 				] ++ lib.optionals (cfg.XMPP) [ | ||||
| 					{ command = "dino"; } | ||||
| 					#{ command = "gajim"; } | ||||
| 				]; | ||||
| 				"${ws2}" = [ | ||||
| 					{ app_id = "(?i)thunderbird"; } | ||||
| 					{ app_id = "(?i)evolution"; } | ||||
| 				]; | ||||
| 				"${ws4}" = [ | ||||
| 					{ app_id = "(?i)atril"; } | ||||
| 					{ app_id = "(?i)evince"; } | ||||
| 				]; | ||||
| 				"${ws7}" = [ | ||||
| 					{ app_id = "(?i)mpv"; } | ||||
| 				]; | ||||
| 				"${ws8}" = [ | ||||
| 					{ app_id = "(?i)firefox"; } | ||||
| 					{ app_id = "(?i)firefoxdeveloperedition"; } | ||||
| 				]; | ||||
| 			}; | ||||
| 			floating = { | ||||
| 				modifier = modifier; | ||||
| 			}; | ||||
| 			window = { | ||||
| 				border = 1; | ||||
| 				# hideEdgeBorders = "smart_no_gaps"; | ||||
| 				hideEdgeBorders = "smart"; | ||||
| 				commands = [ | ||||
| 					{ command = "move to scratchpad"; criteria = { title = "Firefox.* Sharing Indicator"; }; } | ||||
| 					{ command = "sticky enable"; criteria = { title = "Picture-in-Picture"; }; } | ||||
| 					{ command = "floating enable"; criteria = { title = "Picture-in-Picture"; }; } | ||||
| 					{ command = "floating enable"; criteria = { title = "Extension: \(Tree Style Tab\) - .*"; }; } | ||||
| 				]; | ||||
| 			}; | ||||
| 			startup = [ | ||||
| 				{ command = "systemctl --user import-environment DISPLAY WAYLAND_DISPLAY SWAYSOCK"; } | ||||
| 				{ command = "hash dbus-update-activation-environment 2>/dev/null &&  dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK" ; } | ||||
| 				{ command = "swayidle -w \\ | ||||
| 					timeout 300 'swaylock -SeFfk --clock --effect-blur 7x5 --effect-vignette 0.5:0.5 --grace 2 --fade-in 0.2 --submit-on-touch' \\ | ||||
|                 			timeout 600 'swaymsg output * dpms off' \\ | ||||
|                 			resume 'swaymsg output * dpms on' \\ | ||||
|         				before-sleep 'swaylock -SeFfk --clock --effect-blur 7x5 --effect-vignette 0.5:0.5 --grace 2 --fade-in 0.2 --submit-on-touch'"; } | ||||
| 				{ command = "mako"; } | ||||
| 				#{ command = "kanshi"; } | ||||
| 				# indicator | ||||
| 				{ command = "networkd-notify"; } | ||||
| 				# needs x11 | ||||
| 				#{ command = "udiskie -t"; } | ||||
| 				#{ command = "modem-manager-gui -i"; } | ||||
| 				#{ command = "nm-applet"; } | ||||
| 				# apps | ||||
| 				{ command = "firefox"; } | ||||
| 				#{ command = "firefoxdeveloperedition"; } | ||||
| 			] ++ lib.optionals (cfg.KDEConnect) [ | ||||
| 				{ command = "/usr/lib/kdeconnectd"; } | ||||
| 				{ command = "/home/genofire/.nix-profile/libexec/kdeconnectd"; } | ||||
| 				{ command = "kdeconnect-indicator"; } | ||||
| 			] ++ lib.optionals (cfg.mail) [ | ||||
| 				{ command = "thunderbird"; } | ||||
| 			] ++ lib.optionals (cfg.nextcloud) [ | ||||
| 				{ command = "nextcloud"; } | ||||
| 			] ++ lib.optionals (cfg.XMPP) [ | ||||
| 				{ command = "dino"; } | ||||
| 				#{ command = "gajim"; } | ||||
| 			]; | ||||
| 		}; | ||||
| 	}; | ||||
| 
 | ||||
| 	# use nixos's .... | ||||
| 	# from programs.sway: | ||||
| 	# xdg.portal.enable = true; | ||||
| 	# xdg.portal.extraPortals = [ pkgs.xdg-desktop-portal-wlr ]; | ||||
| 
 | ||||
| 	services.gammastep = { | ||||
| 		enable = true; | ||||
| 		provider = "geoclue2"; | ||||
| 		# duskTime = "22:00-23:00"; | ||||
| 		# dawnTime = "6:00-10:00"; | ||||
| 	}; | ||||
| 
 | ||||
| 	programs.alacritty = { | ||||
| 		# enable = true; | ||||
| 		settings = { | ||||
| 			background_opacity = 0.95; | ||||
| 			font.size = 8; | ||||
| 			colors.primary = { | ||||
| 				background = "0x0a0a0a"; | ||||
| 				foreground = "0xffffff"; | ||||
| 			}; | ||||
| 		}; | ||||
| 	}; | ||||
| 
 | ||||
| 		# use nixos's .... | ||||
| 		# from programs.sway: | ||||
| 		# xdg.portal.enable = true; | ||||
| 		# xdg.portal.extraPortals = [ pkgs.xdg-desktop-portal-wlr ]; | ||||
| 
 | ||||
| 		services.gammastep = { | ||||
| 			enable = true; | ||||
| 			provider = "geoclue2"; | ||||
| 			# duskTime = "22:00-23:00"; | ||||
| 			# dawnTime = "6:00-10:00"; | ||||
| 		}; | ||||
| 
 | ||||
| 		programs.alacritty = { | ||||
| 			# enable = true; | ||||
| 			settings = { | ||||
| 				background_opacity = 0.95; | ||||
| 				font.size = 8; | ||||
| 				colors.primary = { | ||||
| 					background = "0x0a0a0a"; | ||||
| 					foreground = "0xffffff"; | ||||
| 				}; | ||||
| 			}; | ||||
| 		}; | ||||
| 	}; | ||||
| } | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue