Update config
This commit is contained in:
		
							parent
							
								
									9f35c3997a
								
							
						
					
					
						commit
						46c65664f1
					
				
					 10 changed files with 748 additions and 0 deletions
				
			
		
							
								
								
									
										466
									
								
								config/dunst/dunstrc
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										466
									
								
								config/dunst/dunstrc
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,466 @@
 | 
				
			||||||
 | 
					# See dunst(5) for all configuration options
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[global]
 | 
				
			||||||
 | 
					    ### Display ###
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Which monitor should the notifications be displayed on.
 | 
				
			||||||
 | 
					    monitor = 0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Display notification on focused monitor.  Possible modes are:
 | 
				
			||||||
 | 
					    #   mouse: follow mouse pointer
 | 
				
			||||||
 | 
					    #   keyboard: follow window with keyboard focus
 | 
				
			||||||
 | 
					    #   none: don't follow anything
 | 
				
			||||||
 | 
					    #
 | 
				
			||||||
 | 
					    # "keyboard" needs a window manager that exports the
 | 
				
			||||||
 | 
					    # _NET_ACTIVE_WINDOW property.
 | 
				
			||||||
 | 
					    # This should be the case for almost all modern window managers.
 | 
				
			||||||
 | 
					    #
 | 
				
			||||||
 | 
					    # If this option is set to mouse or keyboard, the monitor option
 | 
				
			||||||
 | 
					    # will be ignored.
 | 
				
			||||||
 | 
					    follow = none
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    ### Geometry ###
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # dynamic width from 0 to 300
 | 
				
			||||||
 | 
					    # width = (0, 300)
 | 
				
			||||||
 | 
					    # constant width of 300
 | 
				
			||||||
 | 
					    width = 250
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # The maximum height of a single notification, excluding the frame.
 | 
				
			||||||
 | 
					    height = 100
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Position the notification in the top right corner
 | 
				
			||||||
 | 
					    origin = top-right
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Offset from the origin
 | 
				
			||||||
 | 
					    offset = 15x10
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Scale factor. It is auto-detected if value is 0.
 | 
				
			||||||
 | 
					    scale = 1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Maximum number of notification (0 means no limit)
 | 
				
			||||||
 | 
					    notification_limit = 20
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    ### Progress bar ###
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Turn on the progess bar. It appears when a progress hint is passed with
 | 
				
			||||||
 | 
					    # for example dunstify -h int:value:12
 | 
				
			||||||
 | 
					    progress_bar = true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Set the progress bar height. This includes the frame, so make sure
 | 
				
			||||||
 | 
					    # it's at least twice as big as the frame width.
 | 
				
			||||||
 | 
					    progress_bar_height = 10
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Set the frame width of the progress bar
 | 
				
			||||||
 | 
					    progress_bar_frame_width = 1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Set the minimum width for the progress bar
 | 
				
			||||||
 | 
					    progress_bar_min_width = 150
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Set the maximum width for the progress bar
 | 
				
			||||||
 | 
					    progress_bar_max_width = 300
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Corner radius for the progress bar. 0 disables rounded corners.
 | 
				
			||||||
 | 
					    progress_bar_corner_radius = 0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Corner radius for the icon image.
 | 
				
			||||||
 | 
					    icon_corner_radius = 0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Show how many messages are currently hidden (because of
 | 
				
			||||||
 | 
					    # notification_limit).
 | 
				
			||||||
 | 
					    indicate_hidden = 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.). (X11 only)
 | 
				
			||||||
 | 
					    transparency = 0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Draw a line of "separator_height" pixel height between two
 | 
				
			||||||
 | 
					    # notifications.
 | 
				
			||||||
 | 
					    # Set to 0 to disable.
 | 
				
			||||||
 | 
					    # If gap_size is greater than 0, this setting will be ignored.
 | 
				
			||||||
 | 
					    separator_height = 2
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Padding between text and separator.
 | 
				
			||||||
 | 
					    padding = 5
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Horizontal padding.
 | 
				
			||||||
 | 
					    horizontal_padding = 8
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Padding between text and icon.
 | 
				
			||||||
 | 
					    text_icon_padding = 0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Defines width in pixels of frame around the notification window.
 | 
				
			||||||
 | 
					    # Set to 0 to disable.
 | 
				
			||||||
 | 
					    frame_width = 3
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Defines color of the frame around the notification window.
 | 
				
			||||||
 | 
					    frame_color = "#aaaaaa"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Size of gap to display between notifications - requires a compositor.
 | 
				
			||||||
 | 
					    # If value is greater than 0, separator_height will be ignored and a border
 | 
				
			||||||
 | 
					    # of size frame_width will be drawn around each notification instead.
 | 
				
			||||||
 | 
					    # Click events on gaps do not currently propagate to applications below.
 | 
				
			||||||
 | 
					    gap_size = 0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # 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.
 | 
				
			||||||
 | 
					    # A client can set the 'transient' hint to bypass this. See the rules
 | 
				
			||||||
 | 
					    # section for how to disable this if necessary
 | 
				
			||||||
 | 
					    # idle_threshold = 120
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    ### Text ###
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    font = Monospace 8
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # The spacing between lines.  If the height is smaller than the
 | 
				
			||||||
 | 
					    # font height, it will get raised to the font height.
 | 
				
			||||||
 | 
					    line_height = 0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Possible values are:
 | 
				
			||||||
 | 
					    # full: Allow a small subset of html markup in notifications:
 | 
				
			||||||
 | 
					    #        <b>bold</b>
 | 
				
			||||||
 | 
					    #        <i>italic</i>
 | 
				
			||||||
 | 
					    #        <s>strikethrough</s>
 | 
				
			||||||
 | 
					    #        <u>underline</u>
 | 
				
			||||||
 | 
					    #
 | 
				
			||||||
 | 
					    #        For a complete reference see
 | 
				
			||||||
 | 
					    #        <https://docs.gtk.org/Pango/pango_markup.html>.
 | 
				
			||||||
 | 
					    #
 | 
				
			||||||
 | 
					    # 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 = "<b>%s</b>\n%b"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Alignment of message text.
 | 
				
			||||||
 | 
					    # Possible values are "left", "center" and "right".
 | 
				
			||||||
 | 
					    alignment = left
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Vertical alignment of message text and icon.
 | 
				
			||||||
 | 
					    # Possible values are "top", "center" and "bottom".
 | 
				
			||||||
 | 
					    vertical_alignment = center
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Show age of message if message is older than show_age_threshold
 | 
				
			||||||
 | 
					    # seconds.
 | 
				
			||||||
 | 
					    # Set to -1 to disable.
 | 
				
			||||||
 | 
					    show_age_threshold = 60
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Specify where to make an ellipsis in long lines.
 | 
				
			||||||
 | 
					    # Possible values are "start", "middle" and "end".
 | 
				
			||||||
 | 
					    ellipsize = middle
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Ignore newlines '\n' in notifications.
 | 
				
			||||||
 | 
					    ignore_newline = no
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Stack together notifications with the same content
 | 
				
			||||||
 | 
					    stack_duplicates = true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Hide the count of stacked notifications with the same content
 | 
				
			||||||
 | 
					    hide_duplicate_count = false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Display indicators for URLs (U) and actions (A).
 | 
				
			||||||
 | 
					    show_indicators = yes
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    ### Icons ###
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Recursive icon lookup. You can set a single theme, instead of having to
 | 
				
			||||||
 | 
					    # define all lookup paths.
 | 
				
			||||||
 | 
					    enable_recursive_icon_lookup = true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Set icon theme (only used for recursive icon lookup)
 | 
				
			||||||
 | 
					    icon_theme = Adwaita
 | 
				
			||||||
 | 
					    # You can also set multiple icon themes, with the leftmost one being used first.
 | 
				
			||||||
 | 
					    # icon_theme = "Adwaita, breeze"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Align icons left/right/top/off
 | 
				
			||||||
 | 
					    icon_position = left
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Scale small icons up to this size, set to 0 to disable. Helpful
 | 
				
			||||||
 | 
					    # for e.g. small files or high-dpi screens. In case of conflict,
 | 
				
			||||||
 | 
					    # max_icon_size takes precedence over this.
 | 
				
			||||||
 | 
					    min_icon_size = 32
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Scale larger icons down to this size, set to 0 to disable
 | 
				
			||||||
 | 
					    max_icon_size = 64
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Paths to default icons (only neccesary when not using recursive icon lookup)
 | 
				
			||||||
 | 
					    icon_path = /usr/share/icons/gnome/16x16/status/:/usr/share/icons/gnome/16x16/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/xdg-open
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # 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 = Dunst
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Define the class of the windows spawned by dunst
 | 
				
			||||||
 | 
					    class = Dunst
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Define the corner radius of the notification window
 | 
				
			||||||
 | 
					    # in pixel size. If the radius is 0, you have no rounded
 | 
				
			||||||
 | 
					    # corners.
 | 
				
			||||||
 | 
					    # The radius will be automatically lowered if it exceeds half of the
 | 
				
			||||||
 | 
					    # notification height to avoid clipping text and/or icons.
 | 
				
			||||||
 | 
					    corner_radius = 15
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Ignore the dbus closeNotification message.
 | 
				
			||||||
 | 
					    # Useful to enforce the timeout set by dunst configuration. Without this
 | 
				
			||||||
 | 
					    # parameter, an application may close the notification sent before the
 | 
				
			||||||
 | 
					    # user defined timeout.
 | 
				
			||||||
 | 
					    ignore_dbusclose = false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    ### Wayland ###
 | 
				
			||||||
 | 
					    # These settings are Wayland-specific. They have no effect when using X11
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Uncomment this if you want to let notications appear under fullscreen
 | 
				
			||||||
 | 
					    # applications (default: overlay)
 | 
				
			||||||
 | 
					    # layer = top
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Set this to true to use X11 output on Wayland.
 | 
				
			||||||
 | 
					    force_xwayland = 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
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    ### mouse
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Defines list of actions for each mouse event
 | 
				
			||||||
 | 
					    # Possible values are:
 | 
				
			||||||
 | 
					    # * none: Don't do anything.
 | 
				
			||||||
 | 
					    # * do_action: Invoke the action determined by the action_name rule. If there is no
 | 
				
			||||||
 | 
					    #              such action, open the context menu.
 | 
				
			||||||
 | 
					    # * open_url: If the notification has exactly one url, open it. If there are multiple
 | 
				
			||||||
 | 
					    #             ones, open the context menu.
 | 
				
			||||||
 | 
					    # * close_current: Close current notification.
 | 
				
			||||||
 | 
					    # * close_all: Close all notifications.
 | 
				
			||||||
 | 
					    # * context: Open context menu for the notification.
 | 
				
			||||||
 | 
					    # * context_all: Open context menu for all notifications.
 | 
				
			||||||
 | 
					    # These values can be strung together for each mouse event, and
 | 
				
			||||||
 | 
					    # will be executed in sequence.
 | 
				
			||||||
 | 
					    mouse_left_click = close_current
 | 
				
			||||||
 | 
					    mouse_middle_click = do_action, close_current
 | 
				
			||||||
 | 
					    mouse_right_click = close_all
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# 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 = false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[urgency_low]
 | 
				
			||||||
 | 
					    # IMPORTANT: colors have to be defined in quotation marks.
 | 
				
			||||||
 | 
					    # Otherwise the "#" and following would be interpreted as a comment.
 | 
				
			||||||
 | 
					    background = "#222222"
 | 
				
			||||||
 | 
					    frame_color = "#3DE6DCD9"
 | 
				
			||||||
 | 
					    foreground = "#888888"
 | 
				
			||||||
 | 
					    timeout = 5
 | 
				
			||||||
 | 
					    # Icon for notifications with low urgency, uncomment to enable
 | 
				
			||||||
 | 
					    #default_icon = /path/to/icon
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[urgency_normal]
 | 
				
			||||||
 | 
					    background = "#3D1450D9"
 | 
				
			||||||
 | 
					    foreground = "#ffffff"
 | 
				
			||||||
 | 
					    frame_color = "#3DE6DCD9"
 | 
				
			||||||
 | 
					    timeout = 15
 | 
				
			||||||
 | 
					    # Icon for notifications with normal urgency, uncomment to enable
 | 
				
			||||||
 | 
					    #default_icon = /path/to/icon
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[urgency_critical]
 | 
				
			||||||
 | 
					    background = "#C91450D9"
 | 
				
			||||||
 | 
					    foreground = "#ffffff"
 | 
				
			||||||
 | 
					    frame_color = "#ff0000"
 | 
				
			||||||
 | 
					    timeout = 0
 | 
				
			||||||
 | 
					    # Icon for notifications with critical urgency, uncomment to enable
 | 
				
			||||||
 | 
					    #default_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 (discouraged, see desktop_entry)
 | 
				
			||||||
 | 
					#    body
 | 
				
			||||||
 | 
					#    category
 | 
				
			||||||
 | 
					#    desktop_entry
 | 
				
			||||||
 | 
					#    icon
 | 
				
			||||||
 | 
					#    match_transient
 | 
				
			||||||
 | 
					#    msg_urgency
 | 
				
			||||||
 | 
					#    stack_tag
 | 
				
			||||||
 | 
					#    summary
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# and you can override the
 | 
				
			||||||
 | 
					#    background
 | 
				
			||||||
 | 
					#    foreground
 | 
				
			||||||
 | 
					#    format
 | 
				
			||||||
 | 
					#    frame_color
 | 
				
			||||||
 | 
					#    fullscreen
 | 
				
			||||||
 | 
					#    new_icon
 | 
				
			||||||
 | 
					#    set_stack_tag
 | 
				
			||||||
 | 
					#    set_transient
 | 
				
			||||||
 | 
					#    set_category
 | 
				
			||||||
 | 
					#    timeout
 | 
				
			||||||
 | 
					#    urgency
 | 
				
			||||||
 | 
					#    icon_position
 | 
				
			||||||
 | 
					#    skip_display
 | 
				
			||||||
 | 
					#    history_ignore
 | 
				
			||||||
 | 
					#    action_name
 | 
				
			||||||
 | 
					#    word_wrap
 | 
				
			||||||
 | 
					#    ellipsize
 | 
				
			||||||
 | 
					#    alignment
 | 
				
			||||||
 | 
					#    hide_text
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Shell-like globbing will get expanded.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Instead of the appname filter, it's recommended to use the desktop_entry filter.
 | 
				
			||||||
 | 
					# GLib based applications export their desktop-entry name. In comparison to the appname,
 | 
				
			||||||
 | 
					# the desktop-entry won't get localized.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# 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: It might be helpful to run dunst -print in a terminal in order
 | 
				
			||||||
 | 
					# to find fitting options for rules.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Disable the transient hint so that idle_threshold cannot be bypassed from the
 | 
				
			||||||
 | 
					# client
 | 
				
			||||||
 | 
					#[transient_disable]
 | 
				
			||||||
 | 
					#    match_transient = yes
 | 
				
			||||||
 | 
					#    set_transient = no
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Make the handling of transient notifications more strict by making them not
 | 
				
			||||||
 | 
					# be placed in history.
 | 
				
			||||||
 | 
					#[transient_history_ignore]
 | 
				
			||||||
 | 
					#    match_transient = yes
 | 
				
			||||||
 | 
					#    history_ignore = yes
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# fullscreen values
 | 
				
			||||||
 | 
					# show: show the notifications, regardless if there is a fullscreen window opened
 | 
				
			||||||
 | 
					# delay: displays the new notification, if there is no fullscreen window active
 | 
				
			||||||
 | 
					#        If the notification is already drawn, it won't get undrawn.
 | 
				
			||||||
 | 
					# pushback: same as delay, but when switching into fullscreen, the notification will get
 | 
				
			||||||
 | 
					#           withdrawn from screen again and will get delayed like a new notification
 | 
				
			||||||
 | 
					#[fullscreen_delay_everything]
 | 
				
			||||||
 | 
					#    fullscreen = delay
 | 
				
			||||||
 | 
					#[fullscreen_show_critical]
 | 
				
			||||||
 | 
					#    msg_urgency = critical
 | 
				
			||||||
 | 
					#    fullscreen = show
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#[espeak]
 | 
				
			||||||
 | 
					#    summary = "*"
 | 
				
			||||||
 | 
					#    script = dunst_espeak.sh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#[script-test]
 | 
				
			||||||
 | 
					#    summary = "*script*"
 | 
				
			||||||
 | 
					#    script = dunst_test.sh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#[ignore]
 | 
				
			||||||
 | 
					#    # This notification will not be displayed
 | 
				
			||||||
 | 
					#    summary = "foobar"
 | 
				
			||||||
 | 
					#    skip_display = true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#[history-ignore]
 | 
				
			||||||
 | 
					#    # This notification will not be saved in history
 | 
				
			||||||
 | 
					#    summary = "foobar"
 | 
				
			||||||
 | 
					#    history_ignore = yes
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#[skip-display]
 | 
				
			||||||
 | 
					#    # This notification will not be displayed, but will be included in the history
 | 
				
			||||||
 | 
					#    summary = "foobar"
 | 
				
			||||||
 | 
					#    skip_display = 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
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					#[stack-volumes]
 | 
				
			||||||
 | 
					#    appname = "some_volume_notifiers"
 | 
				
			||||||
 | 
					#    set_stack_tag = "volume"
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# vim: ft=cfg
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[disable-work]
 | 
				
			||||||
 | 
					  body = "starboundstitch@osuosl.org"
 | 
				
			||||||
 | 
					  skip_display = true
 | 
				
			||||||
							
								
								
									
										33
									
								
								config/dunst/scripts/low-battery.sh
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										33
									
								
								config/dunst/scripts/low-battery.sh
									
										
									
									
									
										Executable file
									
								
							| 
						 | 
					@ -0,0 +1,33 @@
 | 
				
			||||||
 | 
					#!/usr/bin/env bash
 | 
				
			||||||
 | 
					# Low battery notifier
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Kill already running processes
 | 
				
			||||||
 | 
					already_running="$(ps -fC 'grep' -N | grep 'low-battery.sh' | wc -l)"
 | 
				
			||||||
 | 
					if [[ $already_running -gt 1 ]]; then
 | 
				
			||||||
 | 
						pkill -f --older 1 'low-battery.sh'
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					while [[ 0 -eq 0 ]]; do
 | 
				
			||||||
 | 
						battery_status="$(cat /sys/class/power_supply/BAT1/status)"
 | 
				
			||||||
 | 
						battery_charge="$(cat /sys/class/power_supply/BAT1/capacity)"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if [[ $battery_status == 'Discharging' && $battery_charge -le 25 ]]; then
 | 
				
			||||||
 | 
							if   [[ $battery_charge -le 5 ]]; then
 | 
				
			||||||
 | 
								notify-send --icon="${XDG_CONFIG_HOME:-~/.config}/dunst/images/Low-Battery.png" --urgency=critical "Battery critical!" "${battery_charge}%"
 | 
				
			||||||
 | 
								sleep 180
 | 
				
			||||||
 | 
							elif [[ $battery_charge -le 10 ]]; then
 | 
				
			||||||
 | 
								notify-send --icon="${XDG_CONFIG_HOME:-~/.config}/dunst/images/Low-Battery2.png" --urgency=critical "Battery critical!" "${battery_charge}%"
 | 
				
			||||||
 | 
								sleep 600
 | 
				
			||||||
 | 
							elif [[ $battery_charge -le 15 ]]; then
 | 
				
			||||||
 | 
								notify-send --icon="${XDG_CONFIG_HOME:-~/.config}/dunst/images/Low-Battery2.png" "Battery low!" "${battery_charge}%"
 | 
				
			||||||
 | 
								sleep 600
 | 
				
			||||||
 | 
							elif [[ $battery_charge -le 20 ]]; then
 | 
				
			||||||
 | 
								notify-send --icon="${XDG_CONFIG_HOME:-~/.config}/dunst/images/Low-Battery2.png" "Battery low!" "${battery_charge}%"
 | 
				
			||||||
 | 
								sleep 600
 | 
				
			||||||
 | 
							else
 | 
				
			||||||
 | 
								sleep 600
 | 
				
			||||||
 | 
							fi
 | 
				
			||||||
 | 
						else
 | 
				
			||||||
 | 
							sleep 1200
 | 
				
			||||||
 | 
						fi
 | 
				
			||||||
 | 
					done
 | 
				
			||||||
							
								
								
									
										18
									
								
								config/dunst/scripts/muteToggle.sh
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										18
									
								
								config/dunst/scripts/muteToggle.sh
									
										
									
									
									
										Executable file
									
								
							| 
						 | 
					@ -0,0 +1,18 @@
 | 
				
			||||||
 | 
					#!/usr/bin/env bash
 | 
				
			||||||
 | 
					# Mute Toggle Script
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Toggle Mute State
 | 
				
			||||||
 | 
					$(wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Query Pipewire for Mute State
 | 
				
			||||||
 | 
					mute="$(wpctl get-volume @DEFAULT_AUDIO_SINK@ | awk '{print $3}')"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Send Different Notification if Muted or Not
 | 
				
			||||||
 | 
					if [[ "$mute" == "" ]]; then
 | 
				
			||||||
 | 
						# Send the notification
 | 
				
			||||||
 | 
						$(dunstify "Unmuted" -i ${XDG_CONFIG_HOME:-~/.config}/dunst/images/volumeUnMute.png -h string:x-dunst-stack-tag:volume)
 | 
				
			||||||
 | 
					else
 | 
				
			||||||
 | 
						# Send the other notification
 | 
				
			||||||
 | 
						$(dunstify "Muted" -i ${XDG_CONFIG_HOME:-~/.config}/dunst/images/volumeMute.png -h string:x-dunst-stack-tag:volume)
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
							
								
								
									
										24
									
								
								config/dunst/scripts/volumeNotify.sh
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										24
									
								
								config/dunst/scripts/volumeNotify.sh
									
										
									
									
									
										Executable file
									
								
							| 
						 | 
					@ -0,0 +1,24 @@
 | 
				
			||||||
 | 
					#!/usr/bin/env bash
 | 
				
			||||||
 | 
					#Change Volume Script
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Query Pipewire and Parse Mute State
 | 
				
			||||||
 | 
					mute="$(wpctl get-volume @DEFAULT_AUDIO_SINK@ | awk '{print $3}')"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Check to see if it is muted, if so, don't change volume.
 | 
				
			||||||
 | 
					# Otherwise, change volume and Send the notification.
 | 
				
			||||||
 | 
					if [[ "$mute" == "" ]]; then
 | 
				
			||||||
 | 
						# Change the volume
 | 
				
			||||||
 | 
						$(wpctl set-volume @DEFAULT_AUDIO_SINK@ $@)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						# Query Pipewire and Parse Volume as an Int 
 | 
				
			||||||
 | 
						volume="$(wpctl get-volume @DEFAULT_AUDIO_SINK@ | awk '{print $2}')"
 | 
				
			||||||
 | 
						vol=${volume//.}
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						# Send the notification
 | 
				
			||||||
 | 
						$(dunstify -h int:value:"$vol" Volume: $vol -h string:x-dunst-stack-tag:volume)
 | 
				
			||||||
 | 
						$(echo $vol > ${XDG_CACHE_HOME:-~/.cache}/eww/vol)
 | 
				
			||||||
 | 
					else
 | 
				
			||||||
 | 
						# Send the other notification
 | 
				
			||||||
 | 
						$(dunstify -i ${XDG_CONFIG_HOME:-~/.config}/dunst/images/volumeMute.png "Volume Muted" -h string:x-dunst-stack-tag:volume)
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
							
								
								
									
										60
									
								
								config/eww/eww.scss
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										60
									
								
								config/eww/eww.scss
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,60 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.bar {
 | 
				
			||||||
 | 
					  border-radius: 12px;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.bat {
 | 
				
			||||||
 | 
					  color: #cac;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					.circle {
 | 
				
			||||||
 | 
					  margin-top: -2.5rem;
 | 
				
			||||||
 | 
					  color: #cac;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.workspace-entry {
 | 
				
			||||||
 | 
					  border-radius: 20px;
 | 
				
			||||||
 | 
					  border-width: 2px;
 | 
				
			||||||
 | 
					  border-style: solid;
 | 
				
			||||||
 | 
					  border-color: #cac;
 | 
				
			||||||
 | 
					  margin: 2px;
 | 
				
			||||||
 | 
					   
 | 
				
			||||||
 | 
					  &.empty {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  &.occupied{ 
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  &.current {
 | 
				
			||||||
 | 
					    background-color: #536;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.power {
 | 
				
			||||||
 | 
					  color: #cac;
 | 
				
			||||||
 | 
					  font-size: 20;
 | 
				
			||||||
 | 
					  padding-top: 2px;
 | 
				
			||||||
 | 
					  padding-right: 4px;
 | 
				
			||||||
 | 
					  padding-left: 0px;
 | 
				
			||||||
 | 
					  padding-bottom: 4px;
 | 
				
			||||||
 | 
					  margin-bottom: 5px;
 | 
				
			||||||
 | 
					  margin-left: 1px;
 | 
				
			||||||
 | 
					  background-color: #515;
 | 
				
			||||||
 | 
					  border-radius: 15px;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.clock {
 | 
				
			||||||
 | 
					  background-color: #536;
 | 
				
			||||||
 | 
					  border-width: 2px;
 | 
				
			||||||
 | 
					  border-style: solid;
 | 
				
			||||||
 | 
					  border-color: #cac;
 | 
				
			||||||
 | 
					  border-radius: 5px;
 | 
				
			||||||
 | 
					  color: #cac;
 | 
				
			||||||
 | 
					  padding: 2px;
 | 
				
			||||||
 | 
					  margin: 2px;
 | 
				
			||||||
 | 
					  border-radius: 3px;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										97
									
								
								config/eww/eww.yuck
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										97
									
								
								config/eww/eww.yuck
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,97 @@
 | 
				
			||||||
 | 
					;;;; (defpoll time :interval "1s" 'date +%s') 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(defwidget clock []
 | 
				
			||||||
 | 
					  (box :orientation "vertical"
 | 
				
			||||||
 | 
					       :halign "center"
 | 
				
			||||||
 | 
					       :valign "end"
 | 
				
			||||||
 | 
					       (box :class "clock" {formattime(EWW_TIME, "%H")})
 | 
				
			||||||
 | 
					       (box :class "clock" {formattime(EWW_TIME, "%M")})
 | 
				
			||||||
 | 
					       ))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(deflisten workspaces :initial "[]" "bash ~/.config/eww/scripts/get-workspaces")
 | 
				
			||||||
 | 
					(deflisten current_workspace :initial "..." "bash ~/.config/eww/scripts/get-active-workspace")
 | 
				
			||||||
 | 
					(deflisten urgent_workspace :initial "..." "bash ~/.config/eww/scripts/get-urgent-workspaces")
 | 
				
			||||||
 | 
					(defwidget _workspaces []
 | 
				
			||||||
 | 
					  (eventbox :onscroll "bash ~/.config/eww/scripts/change-active-workspace {} ${current_workspace}" :class "workspaces-widget"
 | 
				
			||||||
 | 
					    (box :space-evenly false :orientation "vertical"
 | 
				
			||||||
 | 
					      (label :text "${workspaces}${current_workspace}${urgent_workspace}" :visible false)
 | 
				
			||||||
 | 
					      (for workspace in workspaces
 | 
				
			||||||
 | 
					        (eventbox :onclick "hyprctl dispatch workspace ${workspace.id}"
 | 
				
			||||||
 | 
					          (box :class "workspace-entry ${workspace.id == current_workspace ? "current" : ""} ${workspace.id == urgent_workspace ? "urgent" : ""} ${workspace.windows > 0 ? "occupied" : "empty" }"
 | 
				
			||||||
 | 
					            (label :text "${workspace.id}")
 | 
				
			||||||
 | 
					          ))))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(defwidget circle [val prog sty char] 
 | 
				
			||||||
 | 
					  (box :halign "center"
 | 
				
			||||||
 | 
					    :orientation "vertical"
 | 
				
			||||||
 | 
					    :valign "end"
 | 
				
			||||||
 | 
					    (circular-progress :value prog 
 | 
				
			||||||
 | 
					      :start-at 10 
 | 
				
			||||||
 | 
					      :clockwise false
 | 
				
			||||||
 | 
					      :thickness 3
 | 
				
			||||||
 | 
					      :width 30
 | 
				
			||||||
 | 
					      :height 30
 | 
				
			||||||
 | 
					      :class "bat"
 | 
				
			||||||
 | 
					      :halign "center"
 | 
				
			||||||
 | 
					      val )
 | 
				
			||||||
 | 
					      (box :class "circle" :style sty char)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(defwidget battery []
 | 
				
			||||||
 | 
					  (circle :prog {EWW_BATTERY.BAT1.capacity * (77778 /100000)} 
 | 
				
			||||||
 | 
					    :sty "color: ${EWW_BATTERY.BAT1.status == 'Charging' ? '#1a1': EWW_BATTERY.BAT1.capacity < 20 ? '#a11': '#cac'};"
 | 
				
			||||||
 | 
					    :val {EWW_BATTERY.BAT1.capacity}
 | 
				
			||||||
 | 
					    :char ""))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(deflisten vol  "cat ~/.cache/eww/vol && inotifywait -q -m -e close_write ~/.cache/eww/vol | while read -r filename event; do  cat  ~/.cache/eww/vol; done")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(defwidget volume [] 
 | 
				
			||||||
 | 
					  (circle :prog {vol * 7/10}
 | 
				
			||||||
 | 
					    :sty "font-size: 12; margin-right: 2px;"
 | 
				
			||||||
 | 
					    :val {vol + 1 - 1}
 | 
				
			||||||
 | 
					    :char ""))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(defpoll micvol :interval "1m" "wpctl get-volume @DEFAULT_AUDIO_SOURCE@ | awk '{print $2}'")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(defwidget mic []
 | 
				
			||||||
 | 
					  (circle :prog {micvol * 70}
 | 
				
			||||||
 | 
					    :sty "margin-left: 1px;"
 | 
				
			||||||
 | 
					    :val {micvol *100}
 | 
				
			||||||
 | 
					    :char ""))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(deflisten backlight "brightnessctl g && inotifywait -q -m -e modify /sys/class/backlight/intel_backlight/actual_brightness | while read -r filename event; do  cat /sys/class/backlight/intel_backlight/actual_brightness; done")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(defwidget brightness []
 | 
				
			||||||
 | 
					  (circle :prog {(backlight / 960) * 7/10}
 | 
				
			||||||
 | 
					    :sty "font-size: 12; margin-right: 3px;"
 | 
				
			||||||
 | 
					    :val {round( backlight / 960, 0) - 1}
 | 
				
			||||||
 | 
					    :char ""))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(defwidget power []
 | 
				
			||||||
 | 
					  (box :class "power" :valign "end" "⏻"))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(defwidget bar []
 | 
				
			||||||
 | 
					  (centerbox :orientation "vertical"
 | 
				
			||||||
 | 
					       :halign "center"
 | 
				
			||||||
 | 
					       :space-evenly false
 | 
				
			||||||
 | 
					       (_workspaces)
 | 
				
			||||||
 | 
					       (clock)
 | 
				
			||||||
 | 
					       (box :orientation "vertical" :spacing -25 :valign "end" 
 | 
				
			||||||
 | 
					         (brightness)
 | 
				
			||||||
 | 
					         (mic)
 | 
				
			||||||
 | 
					         (volume)
 | 
				
			||||||
 | 
					         (battery)
 | 
				
			||||||
 | 
					         (power))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(defwindow bar
 | 
				
			||||||
 | 
					           :monitor 0
 | 
				
			||||||
 | 
					           :geometry (geometry :x "4px"
 | 
				
			||||||
 | 
					                               :y "1%"
 | 
				
			||||||
 | 
					                               :width "2.5%"
 | 
				
			||||||
 | 
					                               :height "98%"
 | 
				
			||||||
 | 
					                               :anchor "left center")
 | 
				
			||||||
 | 
					           :stacking "fg"
 | 
				
			||||||
 | 
						   :exclusive true
 | 
				
			||||||
 | 
						   :class "bar"
 | 
				
			||||||
 | 
					  (bar))
 | 
				
			||||||
							
								
								
									
										6
									
								
								config/eww/scripts/get-active-workspace
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										6
									
								
								config/eww/scripts/get-active-workspace
									
										
									
									
									
										Executable file
									
								
							| 
						 | 
					@ -0,0 +1,6 @@
 | 
				
			||||||
 | 
					#!/usr/bin/env bash
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					hyprctl monitors -j | jq '.[] | select(.focused) | .activeWorkspace.id'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					socat -u UNIX-CONNECT:/tmp/hypr/$HYPRLAND_INSTANCE_SIGNATURE/.socket2.sock - |
 | 
				
			||||||
 | 
					  stdbuf -o0 awk -F '>>|,' -e '/^workspace>>/ {print $2}' -e '/^focusedmon>>/ {print $3}'
 | 
				
			||||||
							
								
								
									
										11
									
								
								config/eww/scripts/get-workspaces
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										11
									
								
								config/eww/scripts/get-workspaces
									
										
									
									
									
										Executable file
									
								
							| 
						 | 
					@ -0,0 +1,11 @@
 | 
				
			||||||
 | 
					#!/usr/bin/env bash
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					spaces (){
 | 
				
			||||||
 | 
						WORKSPACE_WINDOWS=$(hyprctl workspaces -j | jq 'map({key: .id | tostring, value: .windows}) | from_entries')
 | 
				
			||||||
 | 
						seq 1 9 | jq --argjson windows "${WORKSPACE_WINDOWS}" --slurp -Mc 'map(tostring) | map({id: ., windows: ($windows[.]//0)})'
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					spaces
 | 
				
			||||||
 | 
					socat -u UNIX-CONNECT:/tmp/hypr/$HYPRLAND_INSTANCE_SIGNATURE/.socket2.sock - | while read -r line; do
 | 
				
			||||||
 | 
						spaces
 | 
				
			||||||
 | 
					done
 | 
				
			||||||
							
								
								
									
										15
									
								
								config/swaylock/config
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								config/swaylock/config
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,15 @@
 | 
				
			||||||
 | 
					screenshots
 | 
				
			||||||
 | 
					clock
 | 
				
			||||||
 | 
					indicator
 | 
				
			||||||
 | 
					indicator-radius=100
 | 
				
			||||||
 | 
					indicator-thickness=7
 | 
				
			||||||
 | 
					effect-blur=7x5
 | 
				
			||||||
 | 
					effect-vignette=0.5:0.5
 | 
				
			||||||
 | 
					ring-color=bb00cc
 | 
				
			||||||
 | 
					key-hl-color=880033
 | 
				
			||||||
 | 
					line-color=00000000
 | 
				
			||||||
 | 
					inside-color 00000088
 | 
				
			||||||
 | 
					separator-color 00000000
 | 
				
			||||||
 | 
					fade-in=0.2
 | 
				
			||||||
 | 
					datestr="%a, %b %e %Y"
 | 
				
			||||||
 | 
					greyscale 
 | 
				
			||||||
| 
						 | 
					@ -50,10 +50,22 @@
 | 
				
			||||||
  #wayland.windowManager.hyprland.enable = true;
 | 
					  #wayland.windowManager.hyprland.enable = true;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  xdg.configFile = { 
 | 
					  xdg.configFile = { 
 | 
				
			||||||
 | 
					    "dunst" = {
 | 
				
			||||||
 | 
					      source = config.lib.file.mkOutOfStoreSymlink "/etc/nixos/config/hypr";
 | 
				
			||||||
 | 
					      recursive = true;
 | 
				
			||||||
 | 
					    };
 | 
				
			||||||
 | 
					    "eww" = {
 | 
				
			||||||
 | 
					      source = config.lib.file.mkOutOfStoreSymlink "/etc/nixos/config/eww";
 | 
				
			||||||
 | 
					      recursive = true;
 | 
				
			||||||
 | 
					    };
 | 
				
			||||||
    "hypr" = {
 | 
					    "hypr" = {
 | 
				
			||||||
      source = config.lib.file.mkOutOfStoreSymlink "/etc/nixos/config/hypr";
 | 
					      source = config.lib.file.mkOutOfStoreSymlink "/etc/nixos/config/hypr";
 | 
				
			||||||
      recursive = true;
 | 
					      recursive = true;
 | 
				
			||||||
    };
 | 
					    };
 | 
				
			||||||
 | 
					    "swaylock" = {
 | 
				
			||||||
 | 
					      source = config.lib.file.mkOutOfStoreSymlink "/etc/nixos/config/swaylock";
 | 
				
			||||||
 | 
					      recursive = true;
 | 
				
			||||||
 | 
					    };
 | 
				
			||||||
  };
 | 
					  };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  systemd.user.services = {
 | 
					  systemd.user.services = {
 | 
				
			||||||
| 
						 | 
					@ -86,6 +98,12 @@
 | 
				
			||||||
  };
 | 
					  };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  home.pointerCursor = {
 | 
				
			||||||
 | 
					    name = "phinger-cursors";
 | 
				
			||||||
 | 
					    package = pkgs.phinger-cursors;
 | 
				
			||||||
 | 
					    gtk.enable = true;
 | 
				
			||||||
 | 
					    size = 64;
 | 
				
			||||||
 | 
					  };
 | 
				
			||||||
  
 | 
					  
 | 
				
			||||||
  # Read the Docs before change
 | 
					  # Read the Docs before change
 | 
				
			||||||
  home.stateVersion = "23.05";
 | 
					  home.stateVersion = "23.05";
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue