1
1
mirror of https://github.com/nboughton/dotfiles synced 2024-11-26 04:28:43 +01:00

latest config

This commit is contained in:
Nick Boughton 2021-02-05 16:55:24 +00:00
parent d70f68dd01
commit ab3b43399a
18 changed files with 807 additions and 268 deletions

@ -208,7 +208,7 @@ preview_images: true
#
# Window opacity as a floating point number from `0.0` to `1.0`.
# The value `0.0` is completely transparent and `1.0` is opaque.
background_opacity: 0.85
background_opacity: 1
# Mouse bindings
#

431
dunst/dunstrc Normal file

@ -0,0 +1,431 @@
[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 = mouse
# The geometry of the window:
# [{width}]x{height}[+/-{x}+/-{y}]
# The geometry of the message window.
# The height is measured in number of notifications everything else
# in pixels. If the width is omitted but the height is given
# ("-geometry x2"), the message window expands over the whole screen
# (dmenu-like). If width is 0, the window expands to the longest
# message displayed. A positive x is measured from the left, a
# negative from the right side of the screen. Y is measured from
# the top and down respectively.
# The width can be negative. In this case the actual width is the
# screen width minus the width defined in within the geometry option.
geometry = "300x5-30+20"
# Show how many messages are currently hidden (because of geometry).
indicate_hidden = yes
# Shrink window if it's smaller than the width. Will be ignored if
# width is 0.
shrink = no
# 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.).
transparency = 10
# The height of the entire notification. If the height is smaller
# than the font height and padding combined, it will be raised
# to the font height and padding.
notification_height = 0
# Draw a line of "separator_height" pixel height between two
# notifications.
# Set to 0 to disable.
separator_height = 2
# Padding between text and separator.
padding = 8
# Horizontal padding.
horizontal_padding = 8
# Defines width in pixels of frame around the notification window.
# Set to 0 to disable.
frame_width = 2
# Defines color of the frame around the notification window.
frame_color = "#5e81ac"
# 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 = Roboto 9
# 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://developer.gnome.org/pango/stable/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 = right
# Vertical alignment of message text and icon.
# Possible values are "top", "center" and "bottom".
vertical_alignment = top
# Show age of message if message is older than show_age_threshold
# seconds.
# Set to -1 to disable.
show_age_threshold = 60
# Split notifications into multiple lines if they don't fit into
# geometry.
word_wrap = yes
# When word_wrap is set to no, 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 ###
# Align icons left/right/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 = 0
# Scale larger icons down to this size, set to 0 to disable
max_icon_size = 32
# Paths to default icons.
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/firefox -new-tab
# 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
# Print a notification on startup.
# This is mainly for error detection, since dbus (re-)starts dunst
# automatically after a crash.
startup_notification = false
# Manage dunst's desire for talking
# Can be one of the following values:
# crit: Critical features. Dunst aborts
# warn: Only non-fatal warnings
# mesg: Important Messages
# info: all unimportant stuff
# debug: all less than unimportant stuff
verbosity = mesg
# 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 = 10
# 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
### 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: If the notification has exactly one action, or one is marked as default,
# invoke it. If there are multiple and no default, open the context menu.
# * close_current: Close current notification.
# * close_all: Close 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
[shortcuts]
# Shortcuts are specified as [modifier+][modifier+]...key
# Available modifiers are "ctrl", "mod1" (the alt-key), "mod2",
# "mod3" and "mod4" (windows-key).
# Xev might be helpful to find names for keys.
# Close notification.
close = ctrl+space
# Close all notifications.
close_all = ctrl+shift+space
# Redisplay last message(s).
# On the US keyboard layout "grave" is normally above TAB and left
# of "1". Make sure this key actually exists on your keyboard layout,
# e.g. check output of 'xmodmap -pke'
history = ctrl+grave
# Context menu.
context = ctrl+shift+period
[urgency_low]
# IMPORTANT: colors have to be defined in quotation marks.
# Otherwise the "#" and following would be interpreted as a comment.
background = "#5e81ac"
foreground = "#d8dee9"
timeout = 10
# Icon for notifications with low urgency, uncomment to enable
#icon = /path/to/icon
[urgency_normal]
background = "#2e3440"
foreground = "#d8dee9"
timeout = 10
# Icon for notifications with normal urgency, uncomment to enable
#icon = /path/to/icon
[urgency_critical]
background = "#bf616a"
foreground = "#4c566a"
frame_color = "#2e3440"
timeout = 0
# Icon for notifications with critical urgency, uncomment to enable
#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
# timeout
# urgency
#
# 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: if you don't want a notification to be displayed, set the format
# to "".
# 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"
# format = ""
#[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

@ -1,7 +1,7 @@
[Settings]
gtk-application-prefer-dark-theme=0
gtk-theme-name=Nordic-darker
gtk-icon-theme-name=Tela-circle-grey-dark
gtk-icon-theme-name=Tela-circle-black-dark
gtk-font-name=Roboto 10
gtk-cursor-theme-name=Adwaita
gtk-cursor-theme-size=0

@ -10,6 +10,7 @@
# Please see https://i3wm.org/docs/userguide.html for a complete reference!
set $mod Mod4
set $term alacritty
# Font for window titles. Will also be used by the bar unless a different font
# is used in the bar {} block below.
@ -20,17 +21,36 @@ font pango:Roboto 10
#font pango:DejaVu Sans Mono 8
exec_always --no-startup-id autotiling
#exec_always --no-startup-id $HOME/.config/polybar/launch.sh
exec_always --no-startup-id $HOME/.config/polybar/launch.sh
# The combination of xss-lock, nm-applet and pactl is a popular choice, so
# they are included here as an example. Modify as you see fit.
# xss-lock grabs a logind suspend inhibit lock and will use i3lock to lock the
# screen before suspend. Use loginctl lock-session to lock your screen.
exec --no-startup-id ~/.screenlayout/default.sh
exec --no-startup-id /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
exec --no-startup-id feh --bg-fill /home/nick/Pictures/Wallpapers/oluit9ej7iu51.png
exec --no-startup-id ~/.fehbg
exec --no-startup-id picom -b -c
exec --no-startup-id dunst
exec --no-startup-id xss-lock --transfer-sleep-lock -- i3lock --nofork
exec --no-startup-id nm-applet
exec --no-startup-id nm-applet --indicator
exec --no-startup-id insync start
### Window config
for_window [class="aptus-upgrade"] floating enable
for_window [class="catfish"] floating enable
for_window [class="Zoom"] floating enable
for_window [class="zoom"] floating enable
for_window [class="Pcmanfm"] floating enable
for_window [class="Pavucontrol"] floating enable
for_window [class="eog"] floating enable
for_window [class="Transmission-gtk"] floating enable
for_window [class="io.github.celluloid_player.Celluloid"] floating enable
for_window [class="Alacritty"] floating enable
for_window [class="URxvt"] floating enable
for_window [class="zenity"] floating enable
for_window [class="apostrophe" title="Export"] floating enable
for_window [class=".*"] border pixel 2
# Use pactl to adjust volume in PulseAudio.
set $refresh_i3status killall -SIGUSR1 i3status
@ -43,7 +63,7 @@ bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOU
floating_modifier $mod
# start a terminal
bindsym $mod+Return exec tilix
bindsym $mod+Return exec $term
# kill focused window
bindsym $mod+q kill
@ -55,6 +75,7 @@ bindsym $mod+d exec --no-startup-id "rofi -show drun"
# There also is i3-dmenu-desktop which only displays applications shipping a
# .desktop file. It is a wrapper around dmenu, so you need that installed.
#bindsym $mod+d exec --no-startup-id i3-dmenu-desktop
bindsym $mod+l exec --no-startup-id i3lock -c 000000
# change focus
bindsym $mod+Left focus left
@ -136,7 +157,7 @@ bindsym $mod+Shift+c reload
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
bindsym $mod+Shift+r restart
# exit i3 (logs you out of your X session)
bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'"
bindsym $mod+Shift+x exec "i3-nagbar -t warning -m 'exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'"
# resize window (you can also use the mouse for that)
mode "resize" {
@ -159,15 +180,17 @@ mode "resize" {
bindsym $mod+r mode "resize"
gaps inner 20
gaps outer -5
gaps inner 10
gaps top 45
#
# Titlebars
#
default_border none
default_floating_border none
hide_edge_borders smart
default_border pixel 2
default_floating_border normal
hide_edge_borders none
#titlebar_border_thickness 2
#titlebar_padding 5 2
#
# Colors #93cee9
#
@ -179,20 +202,20 @@ hide_edge_borders smart
# Start i3bar to display a workspace bar (plus the system information i3status
# finds out, if available)
bar {
status_command i3status
position top
font pango:"Symbols Nerd Font" 8
tray_padding 4
separator_symbol " "
colors {
background #2e3440
statusline #d8dee9
focused_workspace #d8dee9 #5e81ac
active_workspace #d8dee9 #3b4252
inactive_workspace #81a1c1 #2e3440
urgent_workspace #d8dee9 #b48ead
}
}
#bar {
# status_command i3status
# position top
# font pango:"Symbols Nerd Font" 8
# tray_padding 4
# separator_symbol " "
#
# colors {
# background #2e3440
# statusline #d8dee9
#
# focused_workspace #d8dee9 #5e81ac
# active_workspace #d8dee9 #3b4252
# inactive_workspace #81a1c1 #2e3440
# urgent_workspace #d8dee9 #b48ead
# }
#}

@ -1,7 +1,7 @@
layer=top
font=Roboto 11
max-visible=5
anchor=top-center
anchor=top-right
icon-path=~/.icons/DarK-svg
width=400
@ -13,7 +13,7 @@ max-icon-size=32
background-color=#4c566add
text-color=#d8dee9
border-color=#434c5e
border-color=#5e81ac
default-timeout=10000
ignore-timeout=1

@ -66,7 +66,9 @@ shadow-exclude = [
"class_g = 'Conky'",
"class_g ?= 'Notify-osd'",
"class_g = 'Cairo-clock'",
"_GTK_FRAME_EXTENTS@:c"
"_GTK_FRAME_EXTENTS@:c",
"class_g = 'i3-frame'",
"class_g = 'zoom'"
];
# Specify a X geometry that describes the region in which shadow should not
@ -88,7 +90,7 @@ shadow-exclude = [
# Fade windows in/out when opening/closing and when opacity changes,
# unless no-fading-openclose is used.
# fading = false
fading = true
fading = true;
# Opacity change between steps while fading in. (0.01 - 1.0, defaults to 0.028)
# fade-in-step = 0.028
@ -214,7 +216,7 @@ backend = "xrender";
# Enable/disable VSync.
# vsync = false
vsync = true
vsync = true;
# Enable remote control via D-Bus. See the *D-BUS API* section below for more details.
# dbus = false
@ -245,7 +247,7 @@ detect-client-opacity = true;
# try detecting this with X RandR extension.
#
# refresh-rate = 60
refresh-rate = 0
refresh-rate = 0;
# Limit picom to repaint at most once every 1 / 'refresh_rate' second to
# boost performance. This should not be used with
@ -277,14 +279,14 @@ refresh-rate = 0
# in the same group focused at the same time.
#
# detect-transient = false
detect-transient = true
detect-transient = true;
# Use 'WM_CLIENT_LEADER' to group windows, and consider windows in the same
# group focused at the same time. 'WM_TRANSIENT_FOR' has higher priority if
# detect-transient is enabled, too.
#
# detect-client-leader = false
detect-client-leader = true
detect-client-leader = true;
# Resize damaged region by a specific number of pixels.
# A positive value enlarges it while a negative one shrinks it.
@ -324,7 +326,7 @@ detect-client-leader = true
# The opposing option is use-damage
#
# no-use-damage = false
use-damage = true
use-damage = true;
# Use X Sync fence to sync clients' draw calls, to make sure all draw
# calls are finished before picom starts drawing. Needed on nvidia-drivers
@ -418,6 +420,6 @@ wintypes:
tooltip = { fade = true; shadow = true; opacity = 0.75; focus = true; full-shadow = false; };
dock = { shadow = false; }
dnd = { shadow = false; }
popup_menu = { opacity = 0.8; }
dropdown_menu = { opacity = 0.8; }
popup_menu = { opacity = 0.9; }
dropdown_menu = { opacity = 0.9; }
};

@ -1,26 +1,6 @@
;==========================================================
;
;
; ██████╗ ██████╗ ██╗ ██╗ ██╗██████╗ █████╗ ██████╗
; ██╔══██╗██╔═══██╗██║ ╚██╗ ██╔╝██╔══██╗██╔══██╗██╔══██╗
; ██████╔╝██║ ██║██║ ╚████╔╝ ██████╔╝███████║██████╔╝
; ██╔═══╝ ██║ ██║██║ ╚██╔╝ ██╔══██╗██╔══██║██╔══██╗
; ██║ ╚██████╔╝███████╗██║ ██████╔╝██║ ██║██║ ██║
; ╚═╝ ╚═════╝ ╚══════╝╚═╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝
;
;
; To learn more about how to configure Polybar
; go to https://github.com/polybar/polybar
;
; The README contains a lot of information
;
;==========================================================
[colors]
;background = ${xrdb:color0:#222}
background = #2e3440
background-alt = #3b4252
;foreground = ${xrdb:color7:#222}
foreground = #d8dee9
foreground-alt = #e5e9f0
primary = #5e81ac
@ -29,87 +9,86 @@ alert = #bf616a
[bar/mybar]
monitor = ${env:MONITOR:}
width = 100%
height = 24
;offset-x = 1%
;offset-y = 1%
radius = 6.0
width = 1900
height = 30
override-redirect = true
wm-restack = i3
offset-x = 10
offset-y = 10
radius = 0.0
fixed-center = true
background = ${colors.background}
foreground = ${colors.foreground}
line-size = 3
line-color = #f00
line-color = ${colors.foreground}
border-size = 4
border-color = #00000000
border-size = 2
border-color = ${colors.primary}
padding-left = 0
padding-right = 2
module-margin-left = 1
module-margin-right = 2
module-margin-left = 3
module-margin-right = 3
font-0 = roboto:fontformat=truetype:size=8:antialias=true;0
font-1 = unifont:fontformat=truetype:size=8:antialias=true;0
font-2 = siji:pixelsize=10;1
font-0 = roboto:fontformat=truetype:size=8:antialias=true;2
font-1 = unifont:fontformat=truetype:size=8:antialias=true;2
font-2 = siji:pixelsize=10;2
modules-left = i3
modules-center = cpu memory date filesystem battery
modules-right = xbacklight pulseaudio powermenu
modules-left = i3 xwindow
modules-center = cpu memory swap date root_storage home_storage battery
modules-right = updates my-updates weather backlight-acpi pulseaudio powermenu
tray-position = right
tray-padding = 2
;tray-background = #0063ff
;wm-restack = bspwm
;wm-restack = i3
;override-redirect = true
;scroll-up = bspwm-desknext
;scroll-down = bspwm-deskprev
;scroll-up = i3wm-wsnext
;scroll-down = i3wm-wsprev
cursor-click = pointer
cursor-scroll = ns-resize
[module/updates]
type = custom/script
exec = ~/.config/polybar/modules/updates
exec-if = file ~/tmp/updates.json
interval = 5
click-left = update-system; systemctl --user start updates.service
label = "%output%"
[module/my-updates]
type = custom/script
exec = ~/.config/polybar/modules/my-updates
exec-if = file ~/tmp/auroch.json
interval = 5
click-left = systemctl --user start auroch.service
label = " %output%"
[module/weather]
type = custom/script
exec = ~/.config/waybar/modules/weather.sh
interval = 3600
[module/swap]
type = custom/script
exec = free -h | grep Swap | awk '{print $3}'
label = "%output%"
interval = 5
[module/xwindow]
type = internal/xwindow
label = %title:0:30:...%
[module/xkeyboard]
type = internal/xkeyboard
blacklist-0 = num lock
[module/home_storage]
type = custom/script
exec = df -h 2>/dev/null | grep sda3 | awk '{print $5}'
label = "%output%"
interval = 30
format-prefix = " "
format-prefix-foreground = ${colors.foreground-alt}
format-prefix-underline = ${colors.secondary}
label-layout = %layout%
label-layout-underline = ${colors.secondary}
label-indicator-padding = 2
label-indicator-margin = 1
label-indicator-background = ${colors.secondary}
label-indicator-underline = ${colors.secondary}
[module/filesystem]
type = internal/fs
interval = 25
mount-0 = /
mount-1 = /home
label-mounted = %mountpoint%: %percentage_used%%
label-unmounted = %mountpoint% not mounted
label-unmounted-foreground = ${colors.foreground-alt}
; Separator in between workspaces
; label-separator = |
[module/root_storage]
type = custom/script
exec = df -h 2>/dev/null | grep sda2 | awk '{print $5}'
label = "%output%"
interval = 30
[module/i3]
type = internal/i3
@ -127,7 +106,6 @@ label-mode-background = ${colors.primary}
; focused = Active workspace on focused monitor
label-focused = %index%
label-focused-background = ${colors.background-alt}
label-focused-underline= ${colors.primary}
label-focused-padding = 2
; unfocused = Inactive workspace on any monitor
@ -137,7 +115,6 @@ label-unfocused-padding = 2
; visible = Active workspace on unfocused monitor
label-visible = %index%
label-visible-background = ${self.label-focused-background}
label-visible-underline = ${self.label-focused-underline}
label-visible-padding = ${self.label-focused-padding}
; urgent = Workspace with urgency hint set
@ -148,23 +125,11 @@ label-urgent-padding = 2
; Separator in between workspaces
; label-separator = |
[module/xbacklight]
type = internal/xbacklight
format = <label> <bar>
label = BL
bar-width = 10
bar-indicator = |
bar-indicator-foreground = #fff
bar-indicator-font = 2
bar-fill = ─
bar-fill-font = 2
bar-fill-foreground = #9f78e1
bar-empty = ─
bar-empty-font = 2
bar-empty-foreground = ${colors.foreground-alt}
format = <label>
label =  %percentage%
[module/backlight-acpi]
inherit = module/xbacklight
@ -173,62 +138,43 @@ card = intel_backlight
[module/cpu]
type = internal/cpu
interval = 2
format-prefix = " "
interval = 1
format-prefix = ""
format-prefix-foreground = ${colors.foreground-alt}
;format-underline = #f90000
label = %percentage:2%%
[module/memory]
type = internal/memory
interval = 2
format-prefix = " "
format-prefix = ""
format-prefix-foreground = ${colors.foreground-alt}
;format-underline = #4bffdc
label = %percentage_used%%
[module/date]
type = internal/date
interval = 5
date = "%Y-%m-%d"
date = "%a %d %b"
date-alt = " %Y-%m-%d"
time = %H:%M
time-alt = %H:%M:%S
;format-prefix = 
format-prefix-foreground = ${colors.foreground-alt}
;format-underline = #0a6cf5
label = %date% %time%
[module/pulseaudio]
type = internal/pulseaudio
format-volume = <label-volume> <bar-volume>
label-volume = VOL %percentage%%
format-volume = <label-volume>
label-volume = %percentage%%
label-volume-foreground = ${root.foreground}
label-muted = 🔇 muted
label-muted-foreground = #666
label-muted =
label-muted-foreground = ${colors.foreground}
bar-volume-width = 10
bar-volume-foreground-0 = #55aa55
bar-volume-foreground-1 = #55aa55
bar-volume-foreground-2 = #55aa55
bar-volume-foreground-3 = #55aa55
bar-volume-foreground-4 = #55aa55
bar-volume-foreground-5 = #f5a70a
bar-volume-foreground-6 = #ff5555
bar-volume-gradient = false
bar-volume-indicator = |
bar-volume-indicator-font = 2
bar-volume-fill = ─
bar-volume-fill-font = 2
bar-volume-empty = ─
bar-volume-empty-font = 2
bar-volume-empty-foreground = ${colors.foreground-alt}
interval = 1
[module/battery]
type = internal/battery
@ -237,14 +183,10 @@ adapter = AC
full-at = 98
format-charging = <animation-charging> <label-charging>
;format-charging-underline = #ffb52a
format-discharging = <animation-discharging> <label-discharging>
;format-discharging-underline = ${self.format-charging-underline}
format-full-prefix = " "
format-full-prefix-foreground = ${colors.foreground-alt}
;format-full-underline = ${self.format-charging-underline}
ramp-capacity-0 = 
ramp-capacity-1 = 
@ -300,8 +242,4 @@ screenchange-reload = true
;compositing-border = over
;pseudo-transparency = false
[global/wm]
margin-top = 5
margin-bottom = 5
; vim:ft=dosini

3
polybar/modules/my-updates Executable file

@ -0,0 +1,3 @@
#!/bin/bash
echo "$(cat ~/tmp/auroch.json | jq -r '.text')"

3
polybar/modules/updates Executable file

@ -0,0 +1,3 @@
#!/bin/bash
echo "$(cat ~/tmp/updates.json | jq -r '.text')"

145
rofi/config.rasi Normal file

@ -0,0 +1,145 @@
* {
selected-normal-foreground: #e5e9f0;
foreground: #d8dee9;
normal-foreground: @foreground;
alternate-normal-background: #2e3440;
red: #bf616a;
selected-urgent-foreground: @red;
blue: #5e81ac;
urgent-foreground: #b48ead;
alternate-urgent-background: #4c566a;
active-foreground: #eceff4;
lightbg: #4c566a;
selected-active-foreground: #e5e9f0;
alternate-active-background: #434c5e;
background: #2e3440;
alternate-normal-foreground: @foreground;
normal-background: @background;
lightfg: #d8dee9;
selected-normal-background: #4c566a;
border-color: @blue;
spacing: 2;
separatorcolor: #e5e9f0;
urgent-background: #3b4252;
selected-urgent-background: #434c5e;
alternate-urgent-foreground: @urgent-foreground;
background-color: #2e3440;
alternate-active-foreground: @active-foreground;
active-background: #4c566a;
selected-active-background: @blue;
}
window {
background-color: @background;
border: 2;
padding: 5;
border-radius: 10;
}
mainbox {
border: 0;
padding: 5;
border-radius: 10;
}
message {
border: 2px 0px 0px ;
border-color: @separatorcolor;
padding: 1px ;
}
textbox {
text-color: @foreground;
}
listview {
fixed-height: 0;
border: 2px 0px 0px ;
border-color: @separatorcolor;
spacing: 2px ;
scrollbar: true;
padding: 2px 0px 0px ;
}
element {
border: 0;
padding: 1px ;
}
element.normal.normal {
background-color: @normal-background;
text-color: @normal-foreground;
}
element.normal.urgent {
background-color: @urgent-background;
text-color: @urgent-foreground;
}
element.normal.active {
background-color: @active-background;
text-color: @active-foreground;
}
element.selected.normal {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
element.selected.urgent {
background-color: @selected-urgent-background;
text-color: @selected-urgent-foreground;
}
element.selected.active {
background-color: @selected-active-background;
text-color: @selected-active-foreground;
}
element.alternate.normal {
background-color: @alternate-normal-background;
text-color: @alternate-normal-foreground;
}
element.alternate.urgent {
background-color: @alternate-urgent-background;
text-color: @alternate-urgent-foreground;
}
element.alternate.active {
background-color: @alternate-active-background;
text-color: @alternate-active-foreground;
}
scrollbar {
width: 2px ;
border: 0;
handle-color: @normal-foreground;
handle-width: 2px ;
padding: 0;
border-radius: 10;
}
mode-switcher {
border: 2px 0px 0px ;
border-color: @separatorcolor;
}
button {
spacing: 0;
text-color: @normal-foreground;
}
button.selected {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
inputbar {
spacing: 0;
text-color: @normal-foreground;
padding: 1px ;
}
case-indicator {
spacing: 0;
text-color: @normal-foreground;
}
entry {
spacing: 0;
text-color: @normal-foreground;
}
prompt {
spacing: 0;
text-color: @normal-foreground;
}
inputbar {
children: [ prompt,textbox-prompt-colon,entry,case-indicator ];
}
textbox-prompt-colon {
expand: false;
str: ":";
margin: 0px 0.3em 0em 0em ;
text-color: @normal-foreground;
}
/* vim:ft=css

@ -12,10 +12,8 @@ input "1739:32402:DELL0767:00_06CB:7E92_Touchpad" {
#
# Logo key. Use Mod1 for Alt.
set $mod Mod4
# Your preferred terminal emulator
set $term alacritty
# Your preferred application launcher
set $menu wofi -c ~/.config/wofi/config -s ~/.config/wofi/style.css -I
@ -23,14 +21,14 @@ set $menu wofi -c ~/.config/wofi/config -s ~/.config/wofi/style.css -I
set $gnome-schema org.gnome.desktop.interface
exec_always {
gsettings set $gnome-schema gtk-theme 'Nordic-darker'
gsettings set $gnome-schema icon-theme 'Tela-circle-grey-dark'
gsettings set $gnome-schema icon-theme 'Tela-circle-black-dark'
gsettings set $gnome-schema font-name 'Roboto 10'
gsettings set $gnome-schema monospace-font-name 'Roboto Mono 10'
gsettings set $gnome-schema document-font-name 'Roboto 10'
gsettings set org.gnome.desktop.wm.preferences titlebar-font 'Roboto Bold 10'
gsettings set org.gnome.desktop.wm.preferences button-layout ''
gsettings set org.gnome.desktop.default-applications.terminal exec $term
gsettings set org.gnome.desktop.default-applications.terminal exec-arg ''
gsettings set org.gnome.desktop.default-applications.terminal exec-arg '-e'
}
@ -67,8 +65,8 @@ for_window [app_id=io.github.celluloid_player.Celluloid] floating enable
for_window [app_id=Alacritty] floating enable
for_window [app_id=zenity] floating enable
for_window [app_id="apostrophe" title="Export"] floating enable
#for_window [app_id=".*"] floating enable
for_window [app_id=".*"] border pixel 4
for_window [name="Firefox — Sharing Indicator"] floating enable
for_window [app_id=".*"] border pixel 2
### Key bindings
#
@ -89,7 +87,7 @@ for_window [app_id=".*"] border pixel 4
# desktop search
bindsym $mod+c exec catfish
bindsym $mod+Ctrl+r exec alacritty --class ranger -e ranger
bindsym $mod+Ctrl+r exec $term --class ranger -e ranger
# 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.
@ -128,6 +126,7 @@ for_window [app_id=".*"] border pixel 4
bindsym $mod+Shift+p exec grimshot save area
bindsym $mod+Alt+p exec grimshot save output
bindsym $mod+Ctrl+p exec grimshot save window
bindsym $mod+g exec alacritty -e ~/bin/swayrec
#
# Moving around:
@ -239,15 +238,15 @@ bar {
# gaps
#
gaps inner 10
gaps outer -5
smart_gaps off
#
# Titlebars
#
default_border pixel 4
default_border pixel 2
default_floating_border normal
hide_edge_borders smart
hide_edge_borders none
titlebar_border_thickness 2
titlebar_padding 5 2
#
# Colors #93cee9

@ -1,4 +1,4 @@
image=/home/nick/Pictures/Wallpapers/oluit9ej7iu51.png
image=/home/nick/Pictures/Wallpapers/by_home2_2560.jpg
font=Roboto
indicator-radius=100
indicator-thickness=20

@ -1,14 +1,16 @@
// -*- mode: json -*-
[{
{
//"output": "eDP-1",
"layer": "bottom",
"position": "top",
"margin-top": 5,
"margin-right": 5,
"margin-left": 5,
"margin-top": 10,
"margin-right": 10,
"margin-left": 10,
"modules-left": [
"sway/workspaces",
"custom/separator",
"wlr/taskbar",
"custom/separator",
"idle_inhibitor",
"custom/separator",
"sway/mode"
@ -29,6 +31,8 @@
"modules-right": [
"tray",
"custom/separator",
"custom/weather",
"custom/separator",
"custom/updates",
"custom/auroch",
"custom/separator",
@ -53,6 +57,15 @@
"default": ""
}
},
"wlr/taskbar": {
"all-outputs": false,
"format": "{icon}",
"icon-theme": "DarK-svg",
"icon-size": 16,
"on-click": "activate",
"on-middle-click": "close",
"on-right-click": "minimize"
},
"idle_inhibitor": {
"format": "{icon}",
"format-icons": {
@ -64,7 +77,7 @@
"format": "{}"
},
"tray": {
"icon-size": 12,
"icon-size": 14,
"spacing": 10
},
"backlight": {
@ -168,31 +181,12 @@
"format": "",
"on-click": "~/.config/waybar/modules/reboot.sh",
"tooltip": false
}
},
{
"layer": "bottom",
"position": "bottom",
"margin-right": 5,
"margin-left": 5,
"margin-bottom": 5,
"modules-left": ["custom/weather", "wlr/taskbar"],
"modules-center": [],
"modules-right": ["custom/spotify"],
},
"custom/weather": {
"format": "{}",
"exec": "~/.config/waybar/modules/weather.sh",
"interval": 3600
},
"wlr/taskbar": {
"all-outputs": false,
"format": "{icon} {title:.15}...",
"icon-theme": "DarK-svg",
"icon-size": 10,
"on-click": "activate",
"on-middle-click": "close",
"on-right-click": "minimize"
},
"custom/spotify": {
"interval": 1,
"return-type": "json",
@ -200,4 +194,14 @@
"exec-if": "pgrep spotify",
"escape": true
}
}]
}
//{
// "layer": "bottom",
// "position": "bottom",
// "margin-right": 5,
// "margin-left": 5,
// "margin-bottom": 5,
// "modules-left": ["custom/weather"],
// "modules-center": [],
// "modules-right": ["custom/spotify"],
//}

@ -8,7 +8,6 @@ import (
"net/http"
"os"
"regexp"
"sort"
"strings"
"github.com/google/go-github/github"
@ -164,7 +163,9 @@ type pkg struct {
// Just the bit of NPM registry info that I care about
type npmInfo struct {
Versions map[string]interface{} `json:"versions,omitempty"`
DistTags struct {
Latest string `json:"latest,omitempty"`
} `json:"dist-tags,omitempty"`
}
// Retrieve the version of the current AUR package
@ -197,16 +198,7 @@ func (p *pkg) getNpmVer() error {
return err
}
// Copy the keys into an array and sort it, last item should be most recent
v := []string{}
for key := range n.Versions {
if !regexp.MustCompile(`(alpha|beta)`).MatchString(key) {
v = append(v, key)
}
}
sort.Strings(v)
p.UpstreamVer = v[len(v)-1]
p.UpstreamVer = n.DistTags.Latest
return nil
}

@ -1,3 +1,3 @@
#!/bin/bash
report=$(curl wttr.in/?format="%C,+%t")
report=$(curl -q wttr.in/?format="%C,+%t" 2>/dev/null)
echo $report

@ -5,9 +5,9 @@
window#waybar {
color: #d8dee9;
/*background: rgba(76,86,106,0.7);*/
background: none;
border-radius: 4px;
background: #2e3440;
border-radius: 16px;
border: 2px solid #5e81ac;
}
#custom-updates {
@ -36,101 +36,92 @@ window#waybar {
#custom-reboot,
#taskbar,
#tray {
padding: 0px 7px 0px 7px;
padding: 0px 10px 0px 10px;
margin: 5px 0px 5px 0px;
text-shadow: 1px 1px 1px #2e3440;
border-radius: 4px;
/*border: 2px solid #2e3440;*/
border-radius: 10px;
background: #4c566a;
}
/* Separator */
#custom-separator {
color: #d8dee9;
background: none;
padding: 0px;
background: #4c566a;
opacity: 0;
padding: 0px;
}
/* TOP BAR (left)*/
#workspaces {
margin-left: 5px;
padding: 0px;
}
#workspaces button {
padding: 0px 5px 0px 5px;
border-radius: 10px;
}
#workspaces button.focused {
border-radius: 4px;
/*background: rgba(180, 142, 173, 0.7);*/
background: rgba(94,129,172,0.7);
}
#idle_inhibitor {
margin: 0px;
background: rgba(94, 129, 172, 0.8)
}
#mode {
background: rgba(191, 97, 106, 0.7);
background: rgba(191, 97, 106, 0.8)
}
/* TOP BAR (right/center) */
#disk.1,
#memory {
padding-right: 3px;
#memory,
#custom-reboot,
#custom-updates {
padding-right: 5px;
border-top-right-radius: 0px;
border-bottom-right-radius: 0px;
border-right: 0px;
}
#disk.2,
#custom-swap {
padding-left: 3px;
#custom-swap,
#custom-shutdown,
#custom-auroch {
padding-left: 5px;
border-top-left-radius: 0px;
border-bottom-left-radius: 0px;
border-left: 0px;
}
#custom-shutdown {
margin-right: 5px;
}
#clock {
background: rgba(94,129,172,0.7);
background: rgba(94, 129, 172, 0.8)
}
#custom-updates.checking,
#custom-auroch.checking {
background: rgba(235,203,139,0.7);
background: rgba(235, 203, 139, 0.8)
}
#custom-updates.no-updates,
#custom-auroch.no-updates {
background: rgba(163, 190, 140, 0.7);
background: rgba(163, 190, 140, 0.8)
}
#custom-updates.updates,
#custom-auroch.updates {
background: rgba(180, 142, 173, 0.7);
background: rgba(180, 142, 173, 0.8)
}
#custom-updates.error,
#custom-auroch.error {
background: rgba(191, 97, 106, 0.7);
}
#custom-updates {
border-top-right-radius: 0px;
border-bottom-right-radius: 0px;
}
#custom-auroch {
border-top-left-radius: 0px;
border-bottom-left-radius: 0px;
}
/* BOTTOM BAR (left to right)*/
#custom-weather {
padding-top: 5px;
padding-bottom: 5px;
background: rgba(191, 97, 106, 0.8)
}
#taskbar {
padding: 0px;
}
#taskbar button {
border-radius: 4px;
padding-right: 3px;
padding-top: 0px;
padding-bottom: 0px;
border-radius: 10px;
margin: 0px;
padding: 0px 5px 0px 5px;
text-shadow: 1px 1px 1px #2e3440;
}
#taskbar button.active {
background: rgba(94,129,172,0.7);
background: rgba(94, 129, 172, 0.8);
}
/*
#custom-spotify {
background: rgba(94,129,172,0.7);
}
*/

@ -1,4 +1,5 @@
show=drun
prompt=
term=alacritty
layer=overlay
always_parse_args=true
@ -6,3 +7,4 @@ allow_images=true
image_size=16
width=25%
insensitive=true
key_expand=Shift_L-Right

@ -1,5 +1,11 @@
#window {
border-radius: 20px;
border: 2px solid #5e81ac;
}
#outer-box {
padding: 5px;
margin: 10px
}
#inner-box {