diff --git a/.dotter/global.toml b/.dotter/global.toml
index 8f69cee..717a25b 100644
--- a/.dotter/global.toml
+++ b/.dotter/global.toml
@@ -22,11 +22,12 @@ mc = "~/.config/mc"
"i3/i3blocks" = { target = "~/.config/i3blocks", type = "symbolic" }
"i3/rofi" = "~/.config/rofi"
"i3/i3-scrot.conf" = "~/.config/i3-scrot.conf"
+"i3/i3status-rust" = "~/.config/i3status-rust"
[emacs.files]
"emacs/doom" = "~/.config/doom"
-"emacs/spacemacs/.spacemacs" = "~/.spacemacs"
-"emacs/chemacs/.emacs-profiles.el" = "~/.emacs-profiles.el"
+# "emacs/spacemacs/.spacemacs" = "~/.spacemacs"
+# "emacs/chemacs/.emacs-profiles.el" = "~/.emacs-profiles.el"
[alacritty.files]
alacritty = "~/.config/alacritty"
diff --git a/.dotter/local.toml b/.dotter/local.toml
index c79d861..d04d6a1 100644
--- a/.dotter/local.toml
+++ b/.dotter/local.toml
@@ -1,2 +1,2 @@
# includes = []
-packages = ["mc", "nvim", "emacs", "i3", "alacritty", "starship", "zsh", "polybar"]
+packages = [ "nvim", "emacs", "i3", "alacritty", "starship", "zsh" ]
diff --git a/emacs/doom/config.org b/emacs/doom/config.org
index b2778a5..401258a 100644
--- a/emacs/doom/config.org
+++ b/emacs/doom/config.org
@@ -58,7 +58,7 @@
#+begin_src emacs-lisp :tangle yes
;; Open external terminal
-(map! :leader :desc "Open external terminal" "o t" (cmd! (call-process-shell-command "xfce4-terminal &" nil 0)))
+(map! :leader :desc "Open external terminal" "o t" (cmd! (call-process-shell-command "alacritty &" nil 0)))
;; Remap font scaling keybindings to make more sense
(map! :desc "Increase font size" :n "C-+" #'text-scale-increase)
diff --git a/emacs/doom/init.el b/emacs/doom/init.el
index 4e87e92..8f92853 100644
--- a/emacs/doom/init.el
+++ b/emacs/doom/init.el
@@ -163,7 +163,7 @@
;;rest ; Emacs as a REST client
;;rst ; ReST in peace
;;(ruby +rails) ; 1.step {|i| p "Ruby is #{i.even? ? 'love' : 'life'}"}
- rust ; Fe2O3.unwrap().unwrap().unwrap().unwrap()
+ (rust +lsp) ; Fe2O3.unwrap().unwrap().unwrap().unwrap()
;;scala ; java, but good
;;(scheme +guile) ; a fully conniving family of lisps
sh ; she sells {ba,z,fi}sh shells on the C xor
diff --git a/i3/dunst/dunstrc b/i3/dunst/dunstrc
index 55fe55d..c2d242e 100644
--- a/i3/dunst/dunstrc
+++ b/i3/dunst/dunstrc
@@ -1,22 +1,61 @@
[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 = keyboard #mouse
+ frame_width = 1
+ frame_color = "#788388"
+
+ font = Noto Sans 10
+
+ # Allow a small subset of html markup:
+ # bold
+ # italic
+ # strikethrough
+ # underline
+ #
+ # For a complete reference see
+ # .
+ # If markup is not allowed, those tags will be stripped out of the
+ # message.
+ markup = yes
+
+ # 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
+ # Markup is allowed
+ format = "%s %p\n%b"
+
+ # Sort messages by urgency.
+ sort = yes
+
+ # Show how many messages are currently hidden (because of geometry).
+ indicate_hidden = yes
+
+ # Alignment of message text.
+ # Possible values are "left", "center" and "right".
+ alignment = left
+
+ # The frequency with wich text that is longer than the notification
+ # window allows bounces back and forth.
+ # This option conflicts with "word_wrap".
+ # Set to 0 to disable.
+ bounce_freq = 5
+
+ # 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 = no
+
+ # Ignore newlines '\n' in notifications.
+ ignore_newline = no
+
+
# The geometry of the window:
# [{width}]x{height}[+/-{x}+/-{y}]
# The geometry of the message window.
@@ -26,246 +65,96 @@
# (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 top and down respectevly.
# 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
-
+ geometry = "0x4-25+25"
+
# Shrink window if it's smaller than the width. Will be ignored if
# width is 0.
- shrink = no
-
+ shrink = yes
+
# The transparency of the window. Range: [0; 100].
- # This option will only work if a compositing window manager is
+ # This option will only work if a compositing windowmanager is
# present (e.g. xcompmgr, compiz, etc.).
- transparency = 0
-
- # 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
-
+ transparency = 15
+
+ # 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.
+ # default 120
+ idle_threshold = 120
+
+ # 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 windowmanager that exports the
+ # _NET_ACTIVE_WINDOW property.
+ # This should be the case for almost all modern windowmanagers.
+ #
+ # If this option is set to mouse or keyboard, the monitor option
+ # will be ignored.
+ follow = mouse
+
+ # 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
+
+ # Display indicators for URLs (U) and actions (A).
+ show_indicators = yes
+
+ # The height of a single line. If the height is smaller than the
+ # font height, it will get raised to the font height.
+ # This adds empty space above and under the text.
+ line_height = 0
+
# Draw a line of "separator_height" pixel height between two
# notifications.
# Set to 0 to disable.
- separator_height = 2
-
+ separator_height = 1
+
# Padding between text and separator.
+ # padding = 8
padding = 8
-
+
# Horizontal padding.
- horizontal_padding = 8
-
- # 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"
-
+ horizontal_padding = 10
+
# 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 12
-
- # 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:
- # bold
- # italic
- # strikethrough
- # underline
- #
- # For a complete reference see
- # .
- #
- # 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 = "%s\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
-
- # 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
-
+ separator_color = #263238
+
# Print a notification on startup.
# This is mainly for error detection, since dbus (re-)starts dunst
# automatically after a crash.
startup_notification = false
+
+ # dmenu path.
+ dmenu = /usr/bin/dmenu -p dunst:
+
+ # Browser for opening urls in context menu.
+ browser = palemoon
- # 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
+ # Align icons left/right/off
+ icon_position = left
- # 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 = 0
+ # Paths to default icons.
+ icon_path = /usr/share/icons/Adwaita/16x16/status/:/usr/share/icons/Adwaita/16x16/devices/
- # 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 = do_action, close_current
- mouse_middle_click = close_all
- mouse_right_click = close_current
-
-# 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
+ # Limit icons size.
+ max_icon_size=128
[shortcuts]
@@ -273,114 +162,59 @@
# 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+period
-
+ close = mod1+space
+
# Close all notifications.
- close_all = ctrl+shift+period
+ # close_all = ctrl+shift+space
+ close_all = ctrl+mod1+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+shift+space
-
+ # of "1".
+ history = ctrl+mod4+h
+
# Context menu.
- context = ctrl+space
+ context = ctrl+mod1+c
[urgency_low]
# IMPORTANT: colors have to be defined in quotation marks.
# Otherwise the "#" and following would be interpreted as a comment.
- background = "#222222"
- foreground = "#888888"
+ background = "#263238"
+ foreground = "#556064"
timeout = 10
- # Icon for notifications with low urgency, uncomment to enable
- #icon = /path/to/icon
[urgency_normal]
- background = "#285577"
- foreground = "#ffffff"
+ background = "#263238"
+ foreground = "#F9FAF9"
timeout = 10
- # Icon for notifications with normal urgency, uncomment to enable
- #icon = /path/to/icon
[urgency_critical]
- background = "#900000"
- foreground = "#ffffff"
- frame_color = "#ff0000"
+ background = "#D62929"
+ foreground = "#F9FAF9"
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
-#
+# Messages can be matched by "appname", "summary", "body", "icon", "category",
+# "msg_urgency" and you can override the "timeout", "urgency", "foreground",
+# "background", "new_icon" and "format".
# 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
@@ -394,16 +228,6 @@
# 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*"
@@ -424,8 +248,55 @@
# summary = *twitter.com*
# urgency = normal
#
-#[stack-volumes]
-# appname = "some_volume_notifiers"
-# set_stack_tag = "volume"
+#[Claws Mail]
+# appname = claws-mail
+# category = email.arrived
+# urgency = normal
+# background = "#2F899E"
+# foreground = "#FFA247"
+#
+#[mute.sh]
+# appname = mute
+# category = mute.sound
+# script = mute.sh
+#
+#[JDownloader]
+# appname = JDownloader
+# category = JD
+# background = "#FFA247"
+# foreground = "#FFFFFF"
+#
+#[newsbeuter]
+# summary = *Feeds*
+# background = "#A8EB41"
+# foreground = "#FFFFFF"
+#
+[irc]
+ appname = weechat
+ timeout = 0
+ background = "#0033bb"
+ foreground = "#dddddd"
+#
+[weechat hl]
+ appname = weechat
+ category = weechat.HL
+ background = "#FF5C47"
+ foreground = "#FFFFFF"
+#
+[weechat pn]
+ appname = weechat
+ category = weechat.PM
+ background = "#D53B84"
+ foreground = "#FFFFFF"
+#
+#[CMUS]
+# appname = CMUS
+# category = cmus
+# background = "#6C4AB7"
+# foreground = "#FFE756"
+#
+#
+# background = "#30AB70"
+# foreground = "#F67245"
#
# vim: ft=cfg
diff --git a/i3/i3/config b/i3/i3/config
index dcb58d3..440f0a7 100644
--- a/i3/i3/config
+++ b/i3/i3/config
@@ -24,9 +24,9 @@ font pango:FuraCode Nerd Font 12
# screen before suspend. Use loginctl lock-session to lock your screen.
exec --no-startup-id xss-lock --transfer-sleep-lock -- $lock --nofork
-# NetworkManager is the most popular way to manage wireless networks on Linux,
-# and nm-applet is a desktop environment-independent system tray GUI for it.
-# exec --no-startup-id nm-applet
+# Screen brightness controls
+# bindsym XF86MonBrightnessUp exec "xbacklight -inc 10; notify-send 'brightness up'"
+# bindsym XF86MonBrightnessDown exec "xbacklight -dec 10; notify-send 'brightness down'"
# Use pactl to adjust volume in PulseAudio.
# set $refresh_i3status killall -SIGUSR1 i3status
@@ -44,19 +44,12 @@ bindsym $mod+Return exec alacritty
# kill focused window
bindsym $mod+Shift+q kill
-bindsym $mod+q kill
-bindsym $mod+Shift+x kill
bindsym $mod+x kill
# for x button in laptop (produces alt+f4)
bindsym Mod1+F4 kill
# start dmenu (a program launcher)
bindsym $mod+d exec rofi -show run #dmenu_recency -i
-# bindsym $mod exec rofi -show run #dmenu_recency -i
-# There also is the (new) 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
# change focus
bindsym $mod+h focus left
@@ -101,7 +94,7 @@ bindsym $mod+Shift+space floating toggle
bindsym $mod+space focus mode_toggle
# focus the parent container
-# bindsym $mod+a focus parent
+bindsym $mod+a focus parent
# focus the child container
#bindsym $mod+d focus child
@@ -177,8 +170,6 @@ workspace $ws10 output $monitor_right
#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 'You pressed the exit shortcut. Do you really want to 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" {
@@ -209,12 +200,15 @@ bindsym $mod+r mode "resize"
# Start i3bar to display a workspace bar (plus the system information i3status
# finds out, if available)
-#bar {
-# status_command i3blocks
-# position bottom
-# i3bar_command i3bar --transparency
-# bindsym button3 exec --no-startup-id jgmenu_run
-#}
+bar {
+ font pango:DejaVu Sans Mono, Font Awesome 15
+ i3bar_command i3bar
+ status_command i3status-rs
+ position bottom
+
+ tray_output primary
+# tray_output eDP1
+}
set $mode_system System (l) lock, (e) logout, (r) reboot, (s) shutdown
@@ -223,6 +217,8 @@ mode "$mode_system" {
bindsym e exec --no-startup-id i3exit logout, mode "default"
bindsym r exec --no-startup-id i3exit reboot, mode "default"
bindsym s exec --no-startup-id i3exit shutdown, mode "default"
+ bindsym h exec --no-startup-id i3exit hibernate, mode "default"
+ bindsym Shift+s exec --no-startup-id i3exit suspend, mode "default"
# back to normal: Enter or Escape
bindsym Return mode "default"
@@ -260,7 +256,7 @@ bindsym $mod+Print mode "$mode_screenshot_clipboard"
#bindsym $mod+c exec xfce4-terminal --role floating --hide-scrollbar --title Calculator -e qalc
bindsym $mod+c exec qalculate-gtk
bindsym $mod+p exec xwacomcalibrate
-bindsym $mod+t exec thunar
+bindsym $mod+t exec pcmanfm
# bindsym $mod+t exec krusader
#bindsym $mod+m exec xfce4-terminal -x mc
bindsym $mod+Shift+c exec $scripts/jupyter-calculator
@@ -282,6 +278,9 @@ hide_edge_borders smart
show_marks no
+# switch to workspace with urgent window automatically
+for_window [urgent=latest] focus
+
focus_on_window_activation smart
assign [class="firefox" title="Mozilla Firefox$"] workspace $ws1
@@ -311,6 +310,35 @@ for_window [window_role=floating] floating enable
for_window [class="Viewnior"] border normal
+# Open specific applications in floating mode
+# for_window [title="alsamixer"] floating enable border pixel 1
+# for_window [class="calamares"] floating enable border normal
+# for_window [class="Clipgrab"] floating enable
+# for_window [title="File Transfer*"] floating enable
+# for_window [class="fpakman"] floating enable
+# for_window [class="Galculator"] floating enable border pixel 1
+# for_window [class="GParted"] floating enable border normal
+# for_window [title="i3_help"] floating enable sticky enable border normal
+# for_window [class="Lightdm-settings"] floating enable
+# for_window [class="Lxappearance"] floating enable sticky enable border normal
+# for_window [class="Manjaro-hello"] floating enable
+# for_window [class="Manjaro Settings Manager"] floating enable border normal
+# for_window [title="MuseScore: Play Panel"] floating enable
+# for_window [class="Nitrogen"] floating enable sticky enable border normal
+# for_window [class="Oblogout"] fullscreen enable
+# for_window [class="octopi"] floating enable
+# for_window [title="About Pale Moon"] floating enable
+# for_window [class="Pamac-manager"] floating enable
+# for_window [class="Pavucontrol"] floating enable
+# for_window [class="qt5ct"] floating enable sticky enable border normal
+# for_window [class="Qtconfig-qt4"] floating enable sticky enable border normal
+# for_window [class="Simple-scan"] floating enable border normal
+# for_window [class="(?i)System-config-printer.py"] floating enable border normal
+# for_window [class="Skype"] floating enable border normal
+# for_window [class="Timeset-gui"] floating enable border normal
+# for_window [class="(?i)virtualbox"] floating enable border normal
+# for_window [class="Xfburn"] floating enable
+
########## Autostart applications ##########
# exec --no-startup-id "i3-msg 'workspace 9; append_layout ~/.config/i3/workspace-chat.json'"
@@ -327,8 +355,8 @@ exec firefox
#exec telegram-desktop no_focus
# Rightclick menu
-exec_always --no-startup-id ~/.config/polybar/startup.sh
-exec --no-startup-id jgmenu --at-pointer --hide-on-startup
+# exec_always --no-startup-id ~/.config/polybar/startup.sh
+# exec --no-startup-id jgmenu --at-pointer --hide-on-startup
exec --no-startup-id nm-applet
exec --no-startup-id blueman-applet
exec --no-startup-id xfce4-power-manager
@@ -336,18 +364,84 @@ exec --no-startup-id xfce4-power-manager
# Authentication agent
exec --no-startup-id /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
# Notify about software updates
-# exec --no-startup-id pamac-tray
+exec --no-startup-id pamac-tray
+exec --no-startup-id clipit
# Notify about kernel updates
-# exec --no-startup-id msm_notifier
+exec --no-startup-id msm_notifier
# Audio
exec --no-startup-id start-pulseaudio-x11
+exec --no-startup-id pa-applet
# Background
+exec --no-startup-id nitrogen --restore; sleep 1; picom -b
#exec --no-startup-id feh --randomize --bg-fill /home/julian/Pictures/Hintergrundbilder/*
-exec --no-startup-id feh --bg-fill /home/julian/Bilder/background.jpg
+# exec --no-startup-id feh --bg-fill /home/julian/Bilder/background.jpg
# Notifications
exec --no-startup-id dunst -config /home/julian/.config/dunst/dunstrc
+
# exec --no-startup-id /usr/lib/xfce4/notifyd/xfce4-notifyd
+exec --no-startup-id xautolock -time 10 -locker blurlock
+exec_always --no-startup-id ff-theme-util
+exec_always --no-startup-id fix_xcursor
+
# Default workspaces at startup (no need because autostart applications get always focused)
#exec --no-startup-id i3-msg workspace $ws1
#exec --no-startup-id i3-msg workspace $ws10
+
+
+#############################
+### settings for i3-gaps: ###
+#############################
+
+# Set inner/outer gaps
+gaps inner 14
+gaps outer -2
+
+# Additionally, you can issue commands with the following syntax. This is useful to bind keys to changing the gap size.
+# gaps inner|outer current|all set|plus|minus
+# gaps inner all set 10
+# gaps outer all plus 5
+
+# Smart gaps (gaps used if only more than one container on the workspace)
+smart_gaps on
+
+# Smart borders (draw borders around container only if it is not the only container on this workspace)
+# on|no_gaps (on=always activate and no_gaps=only activate if the gap size to the edge of the screen is 0)
+smart_borders on
+
+# Press $mod+Shift+g to enter the gap mode. Choose o or i for modifying outer/inner gaps. Press one of + / - (in-/decrement for current workspace) or 0 (remove gaps for current workspace). If you also press Shift with these keys, the change will be global for all workspaces.
+set $mode_gaps Gaps: (o) outer, (i) inner
+set $mode_gaps_outer Outer Gaps: +|-|0 (local), Shift + +|-|0 (global)
+set $mode_gaps_inner Inner Gaps: +|-|0 (local), Shift + +|-|0 (global)
+bindsym $mod+Shift+g mode "$mode_gaps"
+
+mode "$mode_gaps" {
+ bindsym o mode "$mode_gaps_outer"
+ bindsym i mode "$mode_gaps_inner"
+ bindsym Return mode "default"
+ bindsym Escape mode "default"
+}
+mode "$mode_gaps_inner" {
+ bindsym plus gaps inner current plus 5
+ bindsym minus gaps inner current minus 5
+ bindsym 0 gaps inner current set 0
+
+ bindsym Shift+plus gaps inner all plus 5
+ bindsym Shift+minus gaps inner all minus 5
+ bindsym Shift+0 gaps inner all set 0
+
+ bindsym Return mode "default"
+ bindsym Escape mode "default"
+}
+mode "$mode_gaps_outer" {
+ bindsym plus gaps outer current plus 5
+ bindsym minus gaps outer current minus 5
+ bindsym 0 gaps outer current set 0
+
+ bindsym Shift+plus gaps outer all plus 5
+ bindsym Shift+minus gaps outer all minus 5
+ bindsym Shift+0 gaps outer all set 0
+
+ bindsym Return mode "default"
+ bindsym Escape mode "default"
+}
diff --git a/i3/i3/manjaro-default-config b/i3/i3/manjaro-default-config
index 9e22273..4d21849 100644
--- a/i3/i3/manjaro-default-config
+++ b/i3/i3/manjaro-default-config
@@ -44,7 +44,7 @@ bindsym $mod+z exec --no-startup-id morc_menu
#exec --no-startup-id volumeicon
#bindsym $mod+Ctrl+m exec terminal -e 'alsamixer'
-exec --no-startup-id pulseaudio
+exec --no-startup-id start-pulseaudio-x11
exec --no-startup-id pa-applet
bindsym $mod+Ctrl+m exec pavucontrol
@@ -224,11 +224,8 @@ 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 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -b 'Yes, exit i3' 'i3-msg exit'"
-
# Set shut down, restart and locking features
-bindsym $mod+0 mode "$mode_system"
+bindsym $mod+Shift+e mode "$mode_system"
set $mode_system (l)ock, (e)xit, switch_(u)ser, (s)uspend, (h)ibernate, (r)eboot, (Shift+s)hutdown
mode "$mode_system" {
bindsym l exec --no-startup-id i3exit lock, mode "default"
@@ -279,7 +276,7 @@ exec --no-startup-id nm-applet
exec --no-startup-id xfce4-power-manager
exec --no-startup-id pamac-tray
exec --no-startup-id clipit
-# exec --no-startup-id blueman-applet
+exec --no-startup-id blueman-applet
# exec_always --no-startup-id sbxkb
exec --no-startup-id start_conky_maia
# exec --no-startup-id start_conky_green
diff --git a/i3/i3status-rust/config.toml b/i3/i3status-rust/config.toml
new file mode 100644
index 0000000..8710931
--- /dev/null
+++ b/i3/i3status-rust/config.toml
@@ -0,0 +1,47 @@
+theme = "solarized-dark"
+icons = "awesome"
+
+[[block]]
+block = "disk_space"
+path = "/"
+alias = "/"
+format = "{icon} {available} ({percentage}) frei"
+info_type = "available"
+unit = "GB"
+interval = 20
+warning = 20.0
+alert = 10.0
+
+[[block]]
+block = "memory"
+display_type = "memory"
+format_mem = "{mem_used_percents}"
+format_swap = "{swap_used_percents}"
+
+[[block]]
+block = "cpu"
+interval = 1
+
+[[block]]
+block = "sound"
+
+[[block]]
+block = "net"
+device = "wlp0s20f3"
+format = "{speed_down;K*b} {speed_up;K*b}"
+interval = 5
+
+[[block]]
+block = "networkmanager"
+interface_name_exclude = ['br\-[0-9a-f]{12}', 'docker\d+']
+interface_name_include = []
+ap_format = "{ssid^10}"
+
+[[block]]
+block = "time"
+interval = 5
+format = "%a %d/%m %R"
+
+[[block]]
+block = "battery"
+# if_command = "test -e /sys/class/power_supply/BAT0"
diff --git a/vim/init.vim b/vim/init.vim
index b78349a..25bb4a8 100644
--- a/vim/init.vim
+++ b/vim/init.vim
@@ -38,8 +38,8 @@ call plug#begin()
" Plug 'scrooloose/nerdtree', { 'on': 'NERDTreeToggle' }
" Plug 'Valloric/YouCompleteMe'
" Plug 'iamcco/markdown-preview.nvim', { 'do': { -> mkdp#util#install() }, 'for': ['markdown', 'vim-plug']}
-Plug 'https://github.com/ap/vim-css-color.git'
-Plug 'vim-autoformat/vim-autoformat'
+" Plug 'https://github.com/ap/vim-css-color.git'
+" Plug 'vim-autoformat/vim-autoformat'
" Collection of common configurations for the Nvim LSP client
" Plug 'neovim/nvim-lspconfig'
diff --git a/zsh/.zshrc b/zsh/.zshrc
index c844c35..64f0b6d 100644
--- a/zsh/.zshrc
+++ b/zsh/.zshrc
@@ -1,6 +1,6 @@
# If you come from bash you might have to change your $PATH.
# export PATH=$HOME/bin:/usr/local/bin:$PATH
-export PATH=/home/julian/emacs/doom-emacs/bin:$PATH
+export PATH=/home/julian/.emacs.d/bin:$PATH
export PATH=/home/julian/.cargo/bin:$PATH
export PATH=/home/julian/perl5/bin:$PATH