Initial stow commit
This commit is contained in:
commit
133619b230
|
@ -0,0 +1,245 @@
|
||||||
|
[global]
|
||||||
|
font = Roboto 10
|
||||||
|
|
||||||
|
# Allow a small subset of html markup:
|
||||||
|
# <b>bold</b>
|
||||||
|
# <i>italic</i>
|
||||||
|
# <s>strikethrough</s>
|
||||||
|
# <u>underline</u>
|
||||||
|
#
|
||||||
|
# For a complete reference see
|
||||||
|
# <http://developer.gnome.org/pango/stable/PangoMarkupFormat.html>.
|
||||||
|
# If markup is not allowed, those tags will be stripped out of the
|
||||||
|
# message.
|
||||||
|
allow_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 = "<b>%s</b>\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 = 0
|
||||||
|
|
||||||
|
# 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
|
||||||
|
|
||||||
|
# Ignore newlines '\n' in notifications.
|
||||||
|
ignore_newline = no
|
||||||
|
|
||||||
|
|
||||||
|
# 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 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 = "400x10-5+35"
|
||||||
|
|
||||||
|
# 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 windowmanager is
|
||||||
|
# present (e.g. xcompmgr, compiz, etc.).
|
||||||
|
transparency = 0
|
||||||
|
|
||||||
|
# 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.
|
||||||
|
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 "separatpr_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
|
||||||
|
|
||||||
|
# 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
|
||||||
|
|
||||||
|
# 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 = /usr/bin/firefox -new-tab
|
||||||
|
|
||||||
|
# Align icons left/right/off
|
||||||
|
icon_position = off
|
||||||
|
|
||||||
|
# Paths to default icons.
|
||||||
|
icon_folders = /usr/share/icons/gnome/16x16/status/:/usr/share/icons/gnome/16x16/devices/
|
||||||
|
|
||||||
|
[frame]
|
||||||
|
width = 2
|
||||||
|
color = "#26C6DA"
|
||||||
|
|
||||||
|
[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".
|
||||||
|
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 = "#26C6DA"
|
||||||
|
foreground = "#424242"
|
||||||
|
timeout = 10
|
||||||
|
|
||||||
|
[urgency_normal]
|
||||||
|
background = "#26C6DA"
|
||||||
|
foreground = "#424242"
|
||||||
|
timeout = 10
|
||||||
|
|
||||||
|
[urgency_critical]
|
||||||
|
background = "#26C6DA"
|
||||||
|
foreground = "#424242"
|
||||||
|
timeout = 0
|
||||||
|
|
||||||
|
|
||||||
|
# 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", "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.
|
||||||
|
#
|
||||||
|
# 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.
|
||||||
|
|
||||||
|
#[espeak]
|
||||||
|
# summary = "*"
|
||||||
|
# script = dunst_espeak.sh
|
||||||
|
|
||||||
|
#[script-test]
|
||||||
|
# summary = "*script*"
|
||||||
|
# script = dunst_test.sh
|
||||||
|
|
||||||
|
#[ignore]
|
||||||
|
# # This notification will not be displayed
|
||||||
|
# summary = "foobar"
|
||||||
|
# format = ""
|
||||||
|
|
||||||
|
#[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
|
||||||
|
#
|
||||||
|
# vim: ft=cfg
|
|
@ -0,0 +1,40 @@
|
||||||
|
# i3 Dotfiles
|
||||||
|
This is my configuration of the i3-gaps windows manager.
|
||||||
|
|
||||||
|
# Multimonitor support
|
||||||
|
I have implemented a manual switching mechanism so that I can switch configuration depending on I'm at work, at home or just the laptop
|
||||||
|
|
||||||
|
# Components
|
||||||
|
* [i3-gaps](https://github.com/Airblader/i3)
|
||||||
|
* [Polybar](https://github.com/jaagr/polybar)
|
||||||
|
* [i3lock-fancy](https://github.com/guimeira/i3lock-fancy-multimonitor)
|
||||||
|
* [Rofi](https://github.com/DaveDavenport/rofi)
|
||||||
|
* [Dunst](https://github.com/dunst-project/dunst)
|
||||||
|
* [Gnome Terminal](https://github.com/GNOME/gnome-terminal)
|
||||||
|
|
||||||
|
# Themes
|
||||||
|
GTK: [Materia-dark](https://github.com/nana-4/materia-theme)
|
||||||
|
Icons: [Papirus](https://github.com/PapirusDevelopmentTeam/papirus-icon-theme)
|
||||||
|
|
||||||
|
Defined in ~/.config/gtk-3.0/settings.ini or by lxappearance application.
|
||||||
|
|
||||||
|
## Colors
|
||||||
|
Backgrounds: #263238
|
||||||
|
|
||||||
|
### Polybar
|
||||||
|
Focused Foreground: #009688
|
||||||
|
Unfocused Foreground: #BDBDBD
|
||||||
|
Urgent Foreground: #BF360C
|
||||||
|
|
||||||
|
# Other Settings
|
||||||
|
## Gnome Terminal
|
||||||
|
Padding in the gnome terminals is done by adding:
|
||||||
|
~~~
|
||||||
|
vte-terminal {
|
||||||
|
padding: 10px;
|
||||||
|
}
|
||||||
|
~~~
|
||||||
|
in ~/.config/gtk-3.0/gtk.css
|
||||||
|
|
||||||
|
### Shell
|
||||||
|
I use ZSH with the latest Spaceship prompt
|
|
@ -0,0 +1,189 @@
|
||||||
|
# This file has been auto-generated by i3-config-wizard(1).
|
||||||
|
# It will not be overwritten, so edit it as you like.
|
||||||
|
#
|
||||||
|
# Should you change your keyboard layout some time, delete
|
||||||
|
# this file and re-run i3-config-wizard(1).
|
||||||
|
#
|
||||||
|
|
||||||
|
# i3 config file (v4)
|
||||||
|
#
|
||||||
|
# Please see https://i3wm.org/docs/userguide.html for a complete reference!
|
||||||
|
|
||||||
|
set $mod Mod4
|
||||||
|
|
||||||
|
# Use Mouse+$mod to drag floating windows to their wanted position
|
||||||
|
floating_modifier $mod
|
||||||
|
|
||||||
|
# start a terminal
|
||||||
|
bindsym $mod+Return exec gnome-terminal
|
||||||
|
|
||||||
|
# kill focused window
|
||||||
|
bindsym $mod+Shift+q kill
|
||||||
|
|
||||||
|
# change focus
|
||||||
|
bindsym $mod+j focus left
|
||||||
|
bindsym $mod+k focus down
|
||||||
|
bindsym $mod+l focus up
|
||||||
|
bindsym $mod+ae focus right
|
||||||
|
|
||||||
|
# alternatively, you can use the cursor keys:
|
||||||
|
bindsym $mod+Left focus left
|
||||||
|
bindsym $mod+Down focus down
|
||||||
|
bindsym $mod+Up focus up
|
||||||
|
bindsym $mod+Right focus right
|
||||||
|
|
||||||
|
# move focused window
|
||||||
|
bindsym $mod+Shift+j move left
|
||||||
|
bindsym $mod+Shift+k move down
|
||||||
|
bindsym $mod+Shift+l move up
|
||||||
|
bindsym $mod+Shift+ae move right
|
||||||
|
|
||||||
|
# alternatively, you can use the cursor keys:
|
||||||
|
bindsym $mod+Shift+Left move left
|
||||||
|
bindsym $mod+Shift+Down move down
|
||||||
|
bindsym $mod+Shift+Up move up
|
||||||
|
bindsym $mod+Shift+Right move right
|
||||||
|
|
||||||
|
# split in horizontal orientation
|
||||||
|
bindsym $mod+h split h
|
||||||
|
|
||||||
|
# split in vertical orientation
|
||||||
|
bindsym $mod+v split v
|
||||||
|
|
||||||
|
# enter fullscreen mode for the focused container
|
||||||
|
bindsym $mod+f fullscreen toggle
|
||||||
|
|
||||||
|
# change container layout (stacked, tabbed, toggle split)
|
||||||
|
bindsym $mod+s layout stacking
|
||||||
|
bindsym $mod+w layout tabbed
|
||||||
|
bindsym $mod+e layout toggle split
|
||||||
|
|
||||||
|
# toggle tiling / floating
|
||||||
|
bindsym $mod+Shift+space floating toggle
|
||||||
|
|
||||||
|
# change focus between tiling / floating windows
|
||||||
|
bindsym $mod+space focus mode_toggle
|
||||||
|
|
||||||
|
# focus the parent container
|
||||||
|
bindsym $mod+a focus parent
|
||||||
|
|
||||||
|
# focus the child container
|
||||||
|
#bindsym $mod+d focus child
|
||||||
|
|
||||||
|
# switch to workspace
|
||||||
|
bindsym $mod+1 workspace "1: Comms"
|
||||||
|
bindsym $mod+2 workspace "2: Web"
|
||||||
|
bindsym $mod+3 workspace "3: IDE"
|
||||||
|
bindsym $mod+4 workspace "4: Work"
|
||||||
|
bindsym $mod+5 workspace "5: Media"
|
||||||
|
bindsym $mod+6 workspace "6: REST"
|
||||||
|
bindsym $mod+7 workspace 7
|
||||||
|
bindsym $mod+8 workspace 8
|
||||||
|
bindsym $mod+9 workspace 9
|
||||||
|
bindsym $mod+0 workspace 10
|
||||||
|
|
||||||
|
# move focused container to workspace
|
||||||
|
bindsym $mod+Shift+1 move container to workspace 1
|
||||||
|
bindsym $mod+Shift+2 move container to workspace 2
|
||||||
|
bindsym $mod+Shift+3 move container to workspace 3
|
||||||
|
bindsym $mod+Shift+4 move container to workspace 4
|
||||||
|
bindsym $mod+Shift+5 move container to workspace 5
|
||||||
|
bindsym $mod+Shift+6 move container to workspace 6
|
||||||
|
bindsym $mod+Shift+7 move container to workspace 7
|
||||||
|
bindsym $mod+Shift+8 move container to workspace 8
|
||||||
|
bindsym $mod+Shift+9 move container to workspace 9
|
||||||
|
bindsym $mod+Shift+0 move container to workspace 10
|
||||||
|
|
||||||
|
# reload the configuration file
|
||||||
|
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" {
|
||||||
|
# These bindings trigger as soon as you enter the resize mode
|
||||||
|
|
||||||
|
# Pressing left will shrink the window’s width.
|
||||||
|
# Pressing right will grow the window’s width.
|
||||||
|
# Pressing up will shrink the window’s height.
|
||||||
|
# Pressing down will grow the window’s height.
|
||||||
|
bindsym j resize shrink width 10 px or 10 ppt
|
||||||
|
bindsym k resize grow height 10 px or 10 ppt
|
||||||
|
bindsym l resize shrink height 10 px or 10 ppt
|
||||||
|
bindsym ae resize grow width 10 px or 10 ppt
|
||||||
|
|
||||||
|
# same bindings, but for the arrow keys
|
||||||
|
bindsym Left resize shrink width 10 px or 10 ppt
|
||||||
|
bindsym Down resize grow height 10 px or 10 ppt
|
||||||
|
bindsym Up resize shrink height 10 px or 10 ppt
|
||||||
|
bindsym Right resize grow width 10 px or 10 ppt
|
||||||
|
|
||||||
|
# back to normal: Enter or Escape
|
||||||
|
bindsym Return mode "default"
|
||||||
|
bindsym Escape mode "default"
|
||||||
|
}
|
||||||
|
|
||||||
|
bindsym $mod+r mode "resize"
|
||||||
|
|
||||||
|
|
||||||
|
######################
|
||||||
|
### My Mods
|
||||||
|
#Windows
|
||||||
|
new_window 1pixel
|
||||||
|
gaps inner 10
|
||||||
|
gaps outer 5
|
||||||
|
|
||||||
|
#Gnome Sessions
|
||||||
|
#exec --no-startup-id gnome-session
|
||||||
|
#exec --no-startup-id /usr/libexec/gsd-sound
|
||||||
|
|
||||||
|
#Applets
|
||||||
|
#exec --no-startup-id nm-applet
|
||||||
|
#exec --no-startup-id pasystray
|
||||||
|
|
||||||
|
###Displaymode
|
||||||
|
set $displayMode "Set display mode [w]ork [l]aptop [h]ome"
|
||||||
|
mode $displayMode {
|
||||||
|
bindsym w exec "~/.config/i3/scripts/work-monitors.sh"; \
|
||||||
|
exec "~/.config/i3/scripts/work-layout.sh"; \
|
||||||
|
mode "default"
|
||||||
|
bindsym h exec "~/.config/i3/scripts/home-monitors.sh"; \
|
||||||
|
exec "~/.config/i3/scripts/home-layout.sh"; \
|
||||||
|
mode "default"
|
||||||
|
bindsym l exec "~/.config/i3/scripts/laptop-monitors.sh"; \
|
||||||
|
exec "~/.config/i3/scripts/laptop-layout.sh"; \
|
||||||
|
mode "default"
|
||||||
|
|
||||||
|
bindsym Return mode "default"
|
||||||
|
bindsym Escape mode "default"
|
||||||
|
}
|
||||||
|
bindsym $mod+x mode $displayMode
|
||||||
|
|
||||||
|
### Pause
|
||||||
|
set $mode_system System (l) lock, (e) logout, (s) suspend, (h) hibernate, (r) reboot, (Shift+s) shutdown
|
||||||
|
mode "$mode_system" {
|
||||||
|
bindsym l exec --no-startup-id ~/.config/i3/scripts/i3exit lock, mode "default"
|
||||||
|
bindsym e exec --no-startup-id ~/.config/i3/scripts/i3exit logout, mode "default"
|
||||||
|
bindsym s exec --no-startup-id ~/.config/i3/scripts/i3exit suspend, mode "default"
|
||||||
|
bindsym h exec --no-startup-id ~/.config/i3/scripts/i3exit hibernate, mode "default"
|
||||||
|
bindsym r exec --no-startup-id ~/.config/i3/scripts/i3exit reboot, mode "default"
|
||||||
|
bindsym Shift+s exec --no-startup-id ~/.config/i3/scripts/i3exit shutdown, mode "default"
|
||||||
|
|
||||||
|
# back to normal: Enter or Escape
|
||||||
|
bindsym Return mode "default"
|
||||||
|
bindsym Escape mode "default"
|
||||||
|
}
|
||||||
|
bindsym $mod+Delete mode "$mode_system"
|
||||||
|
|
||||||
|
|
||||||
|
### Rofi
|
||||||
|
bindsym $mod+d exec --no-startup-id rofi -show drun -config ~/.config/i3/rofi/config
|
||||||
|
|
||||||
|
#Bars
|
||||||
|
exec --no-startup-id ~/.config/i3/polybar/polybar.sh
|
||||||
|
exec --no-startup-id ~/.config/i3/scripts/applets.sh
|
||||||
|
|
||||||
|
#Music
|
||||||
|
exec --no-startup-id ~/.config/i3/scripts/music.sh
|
|
@ -0,0 +1,22 @@
|
||||||
|
The MIT License (MIT)
|
||||||
|
|
||||||
|
Copyright (c) 2015 Gui Meira
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
SOFTWARE.
|
||||||
|
|
|
@ -0,0 +1,37 @@
|
||||||
|
# i3lock-fancy-multimonitor
|
||||||
|
The idea for this project was shamelessly copied from [meskarune](https://github.com/meskarune)'s [i3lock-fancy](https://github.com/meskarune/i3lock-fancy).
|
||||||
|
|
||||||
|
It uses [scrot](http://freecode.com/projects/scrot) to take a screenshot of the desktop, then [ImageMagick](http://www.imagemagick.org/) blurs the image and adds a lock icon and text.
|
||||||
|
|
||||||
|
By using information from [xrandr](http://www.x.org/wiki/Projects/XRandR/) and basic math, this script supports multiple monitor setups, displaying the icon and text centered on all screens.
|
||||||
|
|
||||||
|
The lock icon is different from the original project, with a transparent black circle around it. The text is also an image, making it easier to customize (and to put it at the correct position). Finally, it uses vanilla [i3lock](https://github.com/i3/i3lock) instead of [i3lock-color](https://github.com/eBrnd/i3lock-color). The author of i3lock-color [is not maintaining it anymore](https://github.com/eBrnd/i3lock-color/issues/6). If you want to customize the colors of i3lock, the recommended version of i3lock-color is [this one](https://github.com/Arcaena/i3lock-color), maintained by [Chris Guillott](https://github.com/Arcaena).
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
Make sure you have all the dependencies:
|
||||||
|
|
||||||
|
```
|
||||||
|
sudo apt-get install scrot imagemagick i3lock
|
||||||
|
```
|
||||||
|
|
||||||
|
Copy the `lock` script along with the images to some place on your system (e.g.: the i3 folder) and give it execution permission:
|
||||||
|
|
||||||
|
```
|
||||||
|
git clone https://github.com/guimeira/i3lock-fancy-multimonitor.git
|
||||||
|
cp -r i3lock-fancy-multimonitor ~/.i3
|
||||||
|
chmod +x ~/.i3/i3lock-fancy-multimonitor/lock
|
||||||
|
```
|
||||||
|
|
||||||
|
Create a key binding on your i3 config file (in this example I'm using $mod+p):
|
||||||
|
|
||||||
|
```
|
||||||
|
echo "bindsym \$mod+p exec /home/<your username>/.i3/i3lock-fancy-multimonitor/lock" >> ~/.i3/config
|
||||||
|
```
|
||||||
|
|
||||||
|
Now reload the i3 configuration file. By default, the key binding is `$mod+Shift+c`.
|
||||||
|
|
||||||
|
## Command line parameters
|
||||||
|
|
||||||
|
`-n` or `--no-text`: hide the "Type password to unlock" text.
|
||||||
|
|
||||||
|
`-p` or `--pixelate`: pixelate the background instead of blurring it. Might be faster.
|
|
@ -0,0 +1,97 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Defaults
|
||||||
|
# All options are here: http://www.imagemagick.org/Usage/blur/#blur_args
|
||||||
|
BLURTYPE="0x6"
|
||||||
|
#BLURTYPE="0x2"
|
||||||
|
#BLURTYPE="5x3"
|
||||||
|
#BLURTYPE="2x8"
|
||||||
|
#BLURTYPE="2x3"
|
||||||
|
|
||||||
|
DISPLAY_RE="([0-9]+)x([0-9]+)\\+([0-9]+)\\+([0-9]+)"
|
||||||
|
IMAGE_RE="([0-9]+)x([0-9]+)"
|
||||||
|
FOLDER="$(dirname "$(readlink -f "$0")")"
|
||||||
|
LOCK="$FOLDER/lock.png"
|
||||||
|
TEXT="$FOLDER/text.png"
|
||||||
|
PARAMS=""
|
||||||
|
OUTPUT_IMAGE="/tmp/i3lock.png"
|
||||||
|
DISPLAY_TEXT=true
|
||||||
|
PIXELATE=false
|
||||||
|
|
||||||
|
# Read user input
|
||||||
|
POSITIONAL=()
|
||||||
|
while [[ $# -gt 0 ]]
|
||||||
|
do
|
||||||
|
key="$1"
|
||||||
|
|
||||||
|
case $key in
|
||||||
|
-n|--no-text)
|
||||||
|
DISPLAY_TEXT=false
|
||||||
|
shift # past argument
|
||||||
|
;;
|
||||||
|
-p|--pixelate)
|
||||||
|
PIXELATE=true
|
||||||
|
shift # past argument
|
||||||
|
;;
|
||||||
|
*) # unknown option
|
||||||
|
POSITIONAL+=("$1") # save it in an array for later
|
||||||
|
shift # past argument
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
set -- "${POSITIONAL[@]}" # restore positional parameters
|
||||||
|
|
||||||
|
#Take screenshot:
|
||||||
|
scrot -z $OUTPUT_IMAGE
|
||||||
|
|
||||||
|
#Get dimensions of the lock image:
|
||||||
|
LOCK_IMAGE_INFO=`identify $LOCK`
|
||||||
|
[[ $LOCK_IMAGE_INFO =~ $IMAGE_RE ]]
|
||||||
|
IMAGE_WIDTH=${BASH_REMATCH[1]}
|
||||||
|
IMAGE_HEIGHT=${BASH_REMATCH[2]}
|
||||||
|
|
||||||
|
if $DISPLAY_TEXT ; then
|
||||||
|
#Get dimensions of the text image:
|
||||||
|
TEXT_IMAGE_INFO=`identify $TEXT`
|
||||||
|
[[ $TEXT_IMAGE_INFO =~ $IMAGE_RE ]]
|
||||||
|
TEXT_WIDTH=${BASH_REMATCH[1]}
|
||||||
|
TEXT_HEIGHT=${BASH_REMATCH[2]}
|
||||||
|
fi
|
||||||
|
|
||||||
|
#Execute xrandr to get information about the monitors:
|
||||||
|
while read LINE
|
||||||
|
do
|
||||||
|
#If we are reading the line that contains the position information:
|
||||||
|
if [[ $LINE =~ $DISPLAY_RE ]]; then
|
||||||
|
#Extract information and append some parameters to the ones that will be given to ImageMagick:
|
||||||
|
WIDTH=${BASH_REMATCH[1]}
|
||||||
|
HEIGHT=${BASH_REMATCH[2]}
|
||||||
|
X=${BASH_REMATCH[3]}
|
||||||
|
Y=${BASH_REMATCH[4]}
|
||||||
|
POS_X=$(($X+$WIDTH/2-$IMAGE_WIDTH/2))
|
||||||
|
POS_Y=$(($Y+$HEIGHT/2-$IMAGE_HEIGHT/2))
|
||||||
|
|
||||||
|
PARAMS="$PARAMS '$LOCK' '-geometry' '+$POS_X+$POS_Y' '-composite'"
|
||||||
|
|
||||||
|
if $DISPLAY_TEXT ; then
|
||||||
|
TEXT_X=$(($X+$WIDTH/2-$TEXT_WIDTH/2))
|
||||||
|
TEXT_Y=$(($Y+$HEIGHT/2-$TEXT_HEIGHT/2+200))
|
||||||
|
PARAMS="$PARAMS '$TEXT' '-geometry' '+$TEXT_X+$TEXT_Y' '-composite'"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
done <<<"`xrandr`"
|
||||||
|
|
||||||
|
#Execute ImageMagick:
|
||||||
|
if $PIXELATE ; then
|
||||||
|
PARAMS="'$OUTPUT_IMAGE' '-scale' '10%' '-scale' '1000%' $PARAMS '$OUTPUT_IMAGE'"
|
||||||
|
else
|
||||||
|
PARAMS="'$OUTPUT_IMAGE' '-level' '0%,100%,0.6' '-blur' '$BLURTYPE' $PARAMS '$OUTPUT_IMAGE'"
|
||||||
|
fi
|
||||||
|
|
||||||
|
eval convert $PARAMS
|
||||||
|
|
||||||
|
#Lock the screen:
|
||||||
|
i3lock -i $OUTPUT_IMAGE -t
|
||||||
|
|
||||||
|
#Remove the generated image:
|
||||||
|
rm $OUTPUT_IMAGE
|
Binary file not shown.
After Width: | Height: | Size: 4.6 KiB |
Binary file not shown.
After Width: | Height: | Size: 14 KiB |
|
@ -0,0 +1,27 @@
|
||||||
|
{
|
||||||
|
"layout": "splitv",
|
||||||
|
"nodes": [
|
||||||
|
{
|
||||||
|
"border": "pixel",
|
||||||
|
"current_border_width": 1,
|
||||||
|
"floating": "auto_off",
|
||||||
|
"geometry": {
|
||||||
|
"height": 410,
|
||||||
|
"width": 654,
|
||||||
|
"x": 0,
|
||||||
|
"y": 0
|
||||||
|
},
|
||||||
|
"name": "WeeChat 1.9.1",
|
||||||
|
"percent": 0.5,
|
||||||
|
"swallows": [
|
||||||
|
{
|
||||||
|
"class": "^Gnome\\-terminal$",
|
||||||
|
"title": "^weechat$"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"type": "con"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"percent": 0.5,
|
||||||
|
"type": "con"
|
||||||
|
}
|
|
@ -0,0 +1,22 @@
|
||||||
|
// vim:ts=4:sw=4:et
|
||||||
|
{
|
||||||
|
"border": "pixel",
|
||||||
|
"current_border_width": 1,
|
||||||
|
"floating": "auto_off",
|
||||||
|
"geometry": {
|
||||||
|
"height": 1164,
|
||||||
|
"width": 1918,
|
||||||
|
"x": 1,
|
||||||
|
"y": 1
|
||||||
|
},
|
||||||
|
"name": "Google Chrome",
|
||||||
|
"percent": 1,
|
||||||
|
"swallows": [
|
||||||
|
{
|
||||||
|
"class": "^Google\\-chrome\\-beta$",
|
||||||
|
"instance": "^google\\-chrome\\-beta$"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"type": "con"
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,14 @@
|
||||||
|
{
|
||||||
|
"border": "pixel",
|
||||||
|
"floating": "auto_off",
|
||||||
|
"layout": "stacked",
|
||||||
|
"percent": null,
|
||||||
|
"rect": {
|
||||||
|
"height": 480,
|
||||||
|
"width": 670,
|
||||||
|
"x": 944,
|
||||||
|
"y": 310
|
||||||
|
},
|
||||||
|
"type": "floating_con",
|
||||||
|
"nodes": []
|
||||||
|
}
|
|
@ -0,0 +1,75 @@
|
||||||
|
{
|
||||||
|
"layout": "splith",
|
||||||
|
"nodes": [
|
||||||
|
{
|
||||||
|
"border": "pixel",
|
||||||
|
"current_border_width": 1,
|
||||||
|
"floating": "auto_off",
|
||||||
|
"geometry": {
|
||||||
|
"height": 1164,
|
||||||
|
"width": 1918,
|
||||||
|
"x": 1920,
|
||||||
|
"y": 0
|
||||||
|
},
|
||||||
|
"name": "Shell 1",
|
||||||
|
"percent": 0.5,
|
||||||
|
"swallows": [
|
||||||
|
{
|
||||||
|
"class": "^Sublime_text$"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"type": "con"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"border": "pixel",
|
||||||
|
"floating": "auto_off",
|
||||||
|
"layout": "splitv",
|
||||||
|
"nodes": [
|
||||||
|
{
|
||||||
|
"border": "pixel",
|
||||||
|
"current_border_width": 1,
|
||||||
|
"floating": "auto_off",
|
||||||
|
"geometry": {
|
||||||
|
"height": 410,
|
||||||
|
"width": 654,
|
||||||
|
"x": 0,
|
||||||
|
"y": 0
|
||||||
|
},
|
||||||
|
"name": "jfm@moerks: ~",
|
||||||
|
"percent": 0.5,
|
||||||
|
"swallows": [
|
||||||
|
{
|
||||||
|
"class": "^Gnome\\-terminal$",
|
||||||
|
"title": "^shell1$"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"type": "con"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"border": "pixel",
|
||||||
|
"current_border_width": 1,
|
||||||
|
"floating": "auto_off",
|
||||||
|
"geometry": {
|
||||||
|
"height": 410,
|
||||||
|
"width": 654,
|
||||||
|
"x": 0,
|
||||||
|
"y": 0
|
||||||
|
},
|
||||||
|
"name": "Shell 2",
|
||||||
|
"percent": 0.5,
|
||||||
|
"swallows": [
|
||||||
|
{
|
||||||
|
"class": "^Gnome\\-terminal$",
|
||||||
|
"title": "^shell2$"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"type": "con"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"percent": 0.5,
|
||||||
|
"type": "con"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"percent": 0.5,
|
||||||
|
"type": "con"
|
||||||
|
}
|
|
@ -0,0 +1,76 @@
|
||||||
|
{
|
||||||
|
"layout": "splitv",
|
||||||
|
"nodes": [
|
||||||
|
{
|
||||||
|
"border": "pixel",
|
||||||
|
"current_border_width": 1,
|
||||||
|
"floating": "auto_off",
|
||||||
|
"geometry": {
|
||||||
|
"height": 410,
|
||||||
|
"width": 654,
|
||||||
|
"x": 0,
|
||||||
|
"y": 0
|
||||||
|
},
|
||||||
|
"name": "jfm@moerks: ~",
|
||||||
|
"percent": 0.5,
|
||||||
|
"swallows": [
|
||||||
|
{
|
||||||
|
"class": "^Gnome\\-terminal$",
|
||||||
|
"title": "^TODO$"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"type": "con"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"border": "pixel",
|
||||||
|
"floating": "auto_off",
|
||||||
|
"layout": "splith",
|
||||||
|
"nodes": [
|
||||||
|
{
|
||||||
|
"border": "pixel",
|
||||||
|
"current_border_width": 1,
|
||||||
|
"floating": "auto_off",
|
||||||
|
"geometry": {
|
||||||
|
"height": 410,
|
||||||
|
"width": 654,
|
||||||
|
"x": 0,
|
||||||
|
"y": 0
|
||||||
|
},
|
||||||
|
"name": "newsbeuter",
|
||||||
|
"percent": 0.5,
|
||||||
|
"swallows": [
|
||||||
|
{
|
||||||
|
"class": "^Gnome\\-terminal$",
|
||||||
|
"title": "^newsbeuter$"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"type": "con"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"border": "pixel",
|
||||||
|
"current_border_width": 1,
|
||||||
|
"floating": "auto_off",
|
||||||
|
"geometry": {
|
||||||
|
"height": 410,
|
||||||
|
"width": 654,
|
||||||
|
"x": 0,
|
||||||
|
"y": 0
|
||||||
|
},
|
||||||
|
"name": "ncmpcpp 0.8.1",
|
||||||
|
"percent": 0.5,
|
||||||
|
"swallows": [
|
||||||
|
{
|
||||||
|
"class": "^Gnome\\-terminal$",
|
||||||
|
"title": "^music$"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"type": "con"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"percent": 0.5,
|
||||||
|
"type": "con"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"percent": 0.5,
|
||||||
|
"type": "con"
|
||||||
|
}
|
|
@ -0,0 +1,20 @@
|
||||||
|
{
|
||||||
|
"border": "pixel",
|
||||||
|
"current_border_width": 1,
|
||||||
|
"floating": "auto_off",
|
||||||
|
"geometry": {
|
||||||
|
"height": 410,
|
||||||
|
"width": 654,
|
||||||
|
"x": 0,
|
||||||
|
"y": 0
|
||||||
|
},
|
||||||
|
"name": "WeeChat 1.9.1",
|
||||||
|
"percent": 0.5,
|
||||||
|
"swallows": [
|
||||||
|
{
|
||||||
|
"class": "^Gnome\\-terminal$",
|
||||||
|
"title": "^weechat$"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"type": "con"
|
||||||
|
}
|
|
@ -0,0 +1,22 @@
|
||||||
|
// vim:ts=4:sw=4:et
|
||||||
|
{
|
||||||
|
"border": "pixel",
|
||||||
|
"current_border_width": 1,
|
||||||
|
"floating": "auto_off",
|
||||||
|
"geometry": {
|
||||||
|
"height": 1164,
|
||||||
|
"width": 1918,
|
||||||
|
"x": 1,
|
||||||
|
"y": 1
|
||||||
|
},
|
||||||
|
"name": "Google Chrome",
|
||||||
|
"percent": 1,
|
||||||
|
"swallows": [
|
||||||
|
{
|
||||||
|
"class": "^Google\\-chrome\\-beta$",
|
||||||
|
"instance": "^google\\-chrome\\-beta$"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"type": "con"
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,15 @@
|
||||||
|
{
|
||||||
|
"border": "pixel",
|
||||||
|
"floating": "auto_off",
|
||||||
|
"layout": "stacked",
|
||||||
|
"percent": null,
|
||||||
|
"rect": {
|
||||||
|
"height": 480,
|
||||||
|
"width": 670,
|
||||||
|
"x": 944,
|
||||||
|
"y": 310
|
||||||
|
},
|
||||||
|
"type": "floating_con",
|
||||||
|
"nodes": []
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,75 @@
|
||||||
|
{
|
||||||
|
"layout": "splith",
|
||||||
|
"nodes": [
|
||||||
|
{
|
||||||
|
"border": "pixel",
|
||||||
|
"current_border_width": 1,
|
||||||
|
"floating": "auto_off",
|
||||||
|
"geometry": {
|
||||||
|
"height": 1164,
|
||||||
|
"width": 1918,
|
||||||
|
"x": 1920,
|
||||||
|
"y": 0
|
||||||
|
},
|
||||||
|
"name": "Shell 1",
|
||||||
|
"percent": 0.5,
|
||||||
|
"swallows": [
|
||||||
|
{
|
||||||
|
"class": "^Sublime_text$"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"type": "con"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"border": "pixel",
|
||||||
|
"floating": "auto_off",
|
||||||
|
"layout": "splitv",
|
||||||
|
"nodes": [
|
||||||
|
{
|
||||||
|
"border": "pixel",
|
||||||
|
"current_border_width": 1,
|
||||||
|
"floating": "auto_off",
|
||||||
|
"geometry": {
|
||||||
|
"height": 410,
|
||||||
|
"width": 654,
|
||||||
|
"x": 0,
|
||||||
|
"y": 0
|
||||||
|
},
|
||||||
|
"name": "jfm@moerks: ~",
|
||||||
|
"percent": 0.5,
|
||||||
|
"swallows": [
|
||||||
|
{
|
||||||
|
"class": "^Gnome\\-terminal$",
|
||||||
|
"title": "^shell1$"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"type": "con"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"border": "pixel",
|
||||||
|
"current_border_width": 1,
|
||||||
|
"floating": "auto_off",
|
||||||
|
"geometry": {
|
||||||
|
"height": 410,
|
||||||
|
"width": 654,
|
||||||
|
"x": 0,
|
||||||
|
"y": 0
|
||||||
|
},
|
||||||
|
"name": "Shell 2",
|
||||||
|
"percent": 0.5,
|
||||||
|
"swallows": [
|
||||||
|
{
|
||||||
|
"class": "^Gnome\\-terminal$",
|
||||||
|
"title": "^shell2$"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"type": "con"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"percent": 0.5,
|
||||||
|
"type": "con"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"percent": 0.5,
|
||||||
|
"type": "con"
|
||||||
|
}
|
|
@ -0,0 +1,76 @@
|
||||||
|
{
|
||||||
|
"layout": "splitv",
|
||||||
|
"nodes": [
|
||||||
|
{
|
||||||
|
"border": "pixel",
|
||||||
|
"current_border_width": 1,
|
||||||
|
"floating": "auto_off",
|
||||||
|
"geometry": {
|
||||||
|
"height": 410,
|
||||||
|
"width": 654,
|
||||||
|
"x": 0,
|
||||||
|
"y": 0
|
||||||
|
},
|
||||||
|
"name": "jfm@moerks: ~",
|
||||||
|
"percent": 0.5,
|
||||||
|
"swallows": [
|
||||||
|
{
|
||||||
|
"class": "^Gnome\\-terminal$",
|
||||||
|
"title": "^TODO$"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"type": "con"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"border": "pixel",
|
||||||
|
"floating": "auto_off",
|
||||||
|
"layout": "splith",
|
||||||
|
"nodes": [
|
||||||
|
{
|
||||||
|
"border": "pixel",
|
||||||
|
"current_border_width": 1,
|
||||||
|
"floating": "auto_off",
|
||||||
|
"geometry": {
|
||||||
|
"height": 410,
|
||||||
|
"width": 654,
|
||||||
|
"x": 0,
|
||||||
|
"y": 0
|
||||||
|
},
|
||||||
|
"name": "newsbeuter",
|
||||||
|
"percent": 0.5,
|
||||||
|
"swallows": [
|
||||||
|
{
|
||||||
|
"class": "^Gnome\\-terminal$",
|
||||||
|
"title": "^newsbeuter$"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"type": "con"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"border": "pixel",
|
||||||
|
"current_border_width": 1,
|
||||||
|
"floating": "auto_off",
|
||||||
|
"geometry": {
|
||||||
|
"height": 410,
|
||||||
|
"width": 654,
|
||||||
|
"x": 0,
|
||||||
|
"y": 0
|
||||||
|
},
|
||||||
|
"name": "ncmpcpp 0.8.1",
|
||||||
|
"percent": 0.5,
|
||||||
|
"swallows": [
|
||||||
|
{
|
||||||
|
"class": "^Gnome\\-terminal$",
|
||||||
|
"title": "^music$"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"type": "con"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"percent": 0.5,
|
||||||
|
"type": "con"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"percent": 0.5,
|
||||||
|
"type": "con"
|
||||||
|
}
|
|
@ -0,0 +1,20 @@
|
||||||
|
{
|
||||||
|
"border": "pixel",
|
||||||
|
"current_border_width": 1,
|
||||||
|
"floating": "auto_off",
|
||||||
|
"geometry": {
|
||||||
|
"height": 1164,
|
||||||
|
"width": 958,
|
||||||
|
"x": 1,
|
||||||
|
"y": 1
|
||||||
|
},
|
||||||
|
"name": "WeeChat",
|
||||||
|
"percent": 0.5,
|
||||||
|
"swallows": [
|
||||||
|
{
|
||||||
|
"class": "^Gnome\\-terminal$",
|
||||||
|
"title": "^weechat$"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"type": "con"
|
||||||
|
}
|
|
@ -0,0 +1,21 @@
|
||||||
|
{
|
||||||
|
"border": "pixel",
|
||||||
|
"current_border_width": 1,
|
||||||
|
"floating": "auto_off",
|
||||||
|
"geometry": {
|
||||||
|
"height": 1164,
|
||||||
|
"width": 1918,
|
||||||
|
"x": 1,
|
||||||
|
"y": 1
|
||||||
|
},
|
||||||
|
"name": "Google Chrome",
|
||||||
|
"percent": 1,
|
||||||
|
"swallows": [
|
||||||
|
{
|
||||||
|
"class": "^Google\\-chrome\\-beta$",
|
||||||
|
"instance": "^google\\-chrome\\-beta$"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"type": "con"
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,14 @@
|
||||||
|
{
|
||||||
|
"border": "pixel",
|
||||||
|
"floating": "auto_off",
|
||||||
|
"layout": "stacked",
|
||||||
|
"percent": null,
|
||||||
|
"rect": {
|
||||||
|
"height": 480,
|
||||||
|
"width": 670,
|
||||||
|
"x": 944,
|
||||||
|
"y": 310
|
||||||
|
},
|
||||||
|
"type": "floating_con",
|
||||||
|
"nodes": []
|
||||||
|
}
|
|
@ -0,0 +1,75 @@
|
||||||
|
{
|
||||||
|
"layout": "splith",
|
||||||
|
"nodes": [
|
||||||
|
{
|
||||||
|
"border": "pixel",
|
||||||
|
"current_border_width": 1,
|
||||||
|
"floating": "auto_off",
|
||||||
|
"geometry": {
|
||||||
|
"height": 1164,
|
||||||
|
"width": 1918,
|
||||||
|
"x": 1920,
|
||||||
|
"y": 0
|
||||||
|
},
|
||||||
|
"name": "Shell 1",
|
||||||
|
"percent": 0.5,
|
||||||
|
"swallows": [
|
||||||
|
{
|
||||||
|
"class": "^Sublime_text$"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"type": "con"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"border": "pixel",
|
||||||
|
"floating": "auto_off",
|
||||||
|
"layout": "splitv",
|
||||||
|
"nodes": [
|
||||||
|
{
|
||||||
|
"border": "pixel",
|
||||||
|
"current_border_width": 1,
|
||||||
|
"floating": "auto_off",
|
||||||
|
"geometry": {
|
||||||
|
"height": 410,
|
||||||
|
"width": 654,
|
||||||
|
"x": 0,
|
||||||
|
"y": 0
|
||||||
|
},
|
||||||
|
"name": "jfm@moerks: ~",
|
||||||
|
"percent": 0.5,
|
||||||
|
"swallows": [
|
||||||
|
{
|
||||||
|
"class": "^Gnome\\-terminal$",
|
||||||
|
"title": "^shell1$"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"type": "con"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"border": "pixel",
|
||||||
|
"current_border_width": 1,
|
||||||
|
"floating": "auto_off",
|
||||||
|
"geometry": {
|
||||||
|
"height": 410,
|
||||||
|
"width": 654,
|
||||||
|
"x": 0,
|
||||||
|
"y": 0
|
||||||
|
},
|
||||||
|
"name": "Shell 2",
|
||||||
|
"percent": 0.5,
|
||||||
|
"swallows": [
|
||||||
|
{
|
||||||
|
"class": "^Gnome\\-terminal$",
|
||||||
|
"title": "^shell2$"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"type": "con"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"percent": 0.5,
|
||||||
|
"type": "con"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"percent": 0.5,
|
||||||
|
"type": "con"
|
||||||
|
}
|
|
@ -0,0 +1,76 @@
|
||||||
|
{
|
||||||
|
"layout": "splitv",
|
||||||
|
"nodes": [
|
||||||
|
{
|
||||||
|
"border": "pixel",
|
||||||
|
"current_border_width": 1,
|
||||||
|
"floating": "auto_off",
|
||||||
|
"geometry": {
|
||||||
|
"height": 410,
|
||||||
|
"width": 654,
|
||||||
|
"x": 0,
|
||||||
|
"y": 0
|
||||||
|
},
|
||||||
|
"name": "jfm@moerks: ~",
|
||||||
|
"percent": 0.5,
|
||||||
|
"swallows": [
|
||||||
|
{
|
||||||
|
"class": "^Gnome\\-terminal$",
|
||||||
|
"title": "^tasks$"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"type": "con"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"border": "pixel",
|
||||||
|
"floating": "auto_off",
|
||||||
|
"layout": "splith",
|
||||||
|
"nodes": [
|
||||||
|
{
|
||||||
|
"border": "pixel",
|
||||||
|
"current_border_width": 1,
|
||||||
|
"floating": "auto_off",
|
||||||
|
"geometry": {
|
||||||
|
"height": 410,
|
||||||
|
"width": 654,
|
||||||
|
"x": 0,
|
||||||
|
"y": 0
|
||||||
|
},
|
||||||
|
"name": "newsbeuter",
|
||||||
|
"percent": 0.5,
|
||||||
|
"swallows": [
|
||||||
|
{
|
||||||
|
"class": "^Gnome\\-terminal$",
|
||||||
|
"title": "^newsbeuter$"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"type": "con"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"border": "pixel",
|
||||||
|
"current_border_width": 1,
|
||||||
|
"floating": "auto_off",
|
||||||
|
"geometry": {
|
||||||
|
"height": 410,
|
||||||
|
"width": 654,
|
||||||
|
"x": 0,
|
||||||
|
"y": 0
|
||||||
|
},
|
||||||
|
"name": "ncmpcpp 0.8.1",
|
||||||
|
"percent": 0.5,
|
||||||
|
"swallows": [
|
||||||
|
{
|
||||||
|
"class": "^Gnome\\-terminal$",
|
||||||
|
"title": "^music$"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"type": "con"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"percent": 0.5,
|
||||||
|
"type": "con"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"percent": 0.5,
|
||||||
|
"type": "con"
|
||||||
|
}
|
|
@ -0,0 +1,20 @@
|
||||||
|
{
|
||||||
|
"border": "pixel",
|
||||||
|
"current_border_width": 1,
|
||||||
|
"floating": "auto_off",
|
||||||
|
"geometry": {
|
||||||
|
"height": 410,
|
||||||
|
"width": 654,
|
||||||
|
"x": 0,
|
||||||
|
"y": 0
|
||||||
|
},
|
||||||
|
"name": "http-prompt",
|
||||||
|
"percent": 0.5,
|
||||||
|
"swallows": [
|
||||||
|
{
|
||||||
|
"class": "^Gnome\\-terminal$",
|
||||||
|
"title": "^http-prompt$"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"type": "con"
|
||||||
|
}
|
|
@ -0,0 +1,6 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
killall nm-applet
|
||||||
|
killall pasystray
|
||||||
|
nohup nm-applet >/dev/null 2>&1 &
|
||||||
|
nohup pasystray >/dev/null 2>&1 &
|
|
@ -0,0 +1,32 @@
|
||||||
|
#!/bin/sh
|
||||||
|
i3-msg 'workspace "1: Comms"; append_layout ~/.config/i3/layouts/home-workspace1-comms.json'
|
||||||
|
#i3-msg 'workspace "1: Comms"; exec /home/jfm/Tools/mattermost-desktop-3.7.1/mattermost-desktop'
|
||||||
|
i3-msg 'workspace "1: Comms"; exec gnome-terminal --title "weechat" -e "weechat"'
|
||||||
|
i3-msg 'workspace "1: Comms"; move workspace to output DP-2-2'
|
||||||
|
sleep 2
|
||||||
|
|
||||||
|
i3-msg 'workspace "2: Web"; append_layout ~/.config/i3/layouts/home-workspace2-web.json'
|
||||||
|
i3-msg 'workspace "2: Web"; exec google-chrome-beta'
|
||||||
|
i3-msg 'workspace "2: Web"; move workspace to output DP-2-2'
|
||||||
|
sleep 2
|
||||||
|
|
||||||
|
i3-msg 'workspace "3: IDE"; append_layout ~/.config/i3/layouts/home-workspace3-ide.json'
|
||||||
|
i3-msg 'workspace "3: IDE"; move workspace to output DP-2-1'
|
||||||
|
sleep 2
|
||||||
|
|
||||||
|
i3-msg 'workspace "4: Work"; append_layout ~/.config/i3/layouts/home-workspace4-work.json'
|
||||||
|
i3-msg 'workspace "4: Work"; exec subl'
|
||||||
|
i3-msg 'workspace "4: Work"; exec gnome-terminal --title="shell1"'
|
||||||
|
i3-msg 'workspace "4: Work"; exec gnome-terminal --title="shell2"'
|
||||||
|
i3-msg 'workspace "4: Work"; move workspace to output DP-2-1'
|
||||||
|
sleep 2
|
||||||
|
|
||||||
|
i3-msg 'workspace "5: Media"; append_layout ~/.config/i3/layouts/home-workspace5-media.json'
|
||||||
|
#TODO: Set and execute something for the first terminal
|
||||||
|
i3-msg 'workspace "5: Media"; exec gnome-terminal --title="TODO"'
|
||||||
|
i3-msg 'workspace "5: Media"; exec gnome-terminal --title="newsbeuter" -e newsbeuter'
|
||||||
|
i3-msg 'workspace "5: Media"; exec gnome-terminal --title="music" -e ~/Templates/music.sh'
|
||||||
|
i3-msg 'workspace "5: Media"; move workspace to output DP-2-2'
|
||||||
|
|
||||||
|
feh --bg-scale --zoom fill ~/.config/i3/wallpaper/frozen_leafs.jpg
|
||||||
|
~/.config/i3/polybar/home-polybar.sh
|
|
@ -0,0 +1,2 @@
|
||||||
|
#!/bin/sh
|
||||||
|
xrandr --output DP-2-1 --mode 1920x1200 --pos 1920x0 --rotate normal --output DP-2-2 --primary --mode 1920x1200 --pos 0x0 --rotate normal --output DP-2-3 --off --output eDP-1 --off --output HDMI-2 --off --output HDMI-1 --off --output DP-2 --off --output DP-1 --off
|
|
@ -0,0 +1,30 @@
|
||||||
|
#!/bin/sh
|
||||||
|
lock() {
|
||||||
|
~/.config/i3/i3lock/lock --no-text
|
||||||
|
}
|
||||||
|
|
||||||
|
case "$1" in
|
||||||
|
lock)
|
||||||
|
lock
|
||||||
|
;;
|
||||||
|
logout)
|
||||||
|
i3-msg exit
|
||||||
|
;;
|
||||||
|
suspend)
|
||||||
|
lock && systemctl suspend
|
||||||
|
;;
|
||||||
|
hibernate)
|
||||||
|
lock && systemctl hibernate
|
||||||
|
;;
|
||||||
|
reboot)
|
||||||
|
systemctl reboot
|
||||||
|
;;
|
||||||
|
shutdown)
|
||||||
|
systemctl poweroff
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Usage: $0 {lock|logout|suspend|hibernate|reboot|shutdown}"
|
||||||
|
exit 2
|
||||||
|
esac
|
||||||
|
|
||||||
|
exit 0
|
|
@ -0,0 +1,28 @@
|
||||||
|
#!/bin/sh
|
||||||
|
i3-msg 'workspace "1: Comms"; append_layout ~/.config/i3/layouts/laptop-workspace1-comms.json'
|
||||||
|
#i3-msg 'workspace "1: Comms"; exec /home/jfm/Tools/mattermost-desktop-3.7.1/mattermost-desktop'
|
||||||
|
i3-msg 'workspace "1: Comms"; exec gnome-terminal --title "weechat" --profile laptop -e "weechat"'
|
||||||
|
i3-msg 'workspace "1: Comms"; move workspace to output eDP-1'
|
||||||
|
|
||||||
|
i3-msg 'workspace "2: Web"; append_layout ~/.config/i3/layouts/laptop-workspace2-web.json'
|
||||||
|
i3-msg 'workspace "2: Web"; exec google-chrome-beta'
|
||||||
|
i3-msg 'workspace "2: Web"; move workspace to output eDP-1'
|
||||||
|
|
||||||
|
i3-msg 'workspace "3: IDE"; append_layout ~/.config/i3/layouts/laptop-workspace3-ide.json'
|
||||||
|
i3-msg 'workspace "3: IDE"; move workspace to output eDP-1'
|
||||||
|
|
||||||
|
i3-msg 'workspace "4: Work"; append_layout ~/.config/i3/layouts/laptop-workspace4-work.json'
|
||||||
|
i3-msg 'workspace "4: Work"; exec subl'
|
||||||
|
i3-msg 'workspace "4: Work"; exec gnome-terminal --title="shell1" --profile laptop'
|
||||||
|
i3-msg 'workspace "4: Work"; exec gnome-terminal --title="shell2" --profile laptop'
|
||||||
|
i3-msg 'workspace "4: Work"; move workspace to output eDP-1'
|
||||||
|
|
||||||
|
i3-msg 'workspace "5: Media"; append_layout ~/.config/i3/layouts/laptop-workspace5-media.json'
|
||||||
|
#TODO: Set and execute something for the first terminal
|
||||||
|
i3-msg 'workspace "5: Media"; exec gnome-terminal --title="TODO" --profile laptop'
|
||||||
|
i3-msg 'workspace "5: Media"; exec gnome-terminal --title="newsbeuter" --profile laptop -e newsbeuter'
|
||||||
|
i3-msg 'workspace "5: Media"; exec gnome-terminal --title="music" --profile laptop -e ~/Templates/music.sh'
|
||||||
|
i3-msg 'workspace "5: Media"; move workspace to output eDP-1'
|
||||||
|
|
||||||
|
feh --bg-scale --zoom fill ~/.config/i3/wallpaper/frozen_leafs.jpg
|
||||||
|
~/.config/i3/polybar/laptop-polybar.sh
|
|
@ -0,0 +1,2 @@
|
||||||
|
#!/bin/sh
|
||||||
|
xrandr --output HDMI-2 --off --output HDMI-1 --off --output DP-1 --off --output eDP-1 --primary --mode 2560x1440 --pos 0x0 --rotate normal --output DP-2 --off
|
|
@ -0,0 +1,3 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
nohup mopidy >/dev/null 2>&1 &
|
|
@ -0,0 +1,36 @@
|
||||||
|
#!/bin/sh
|
||||||
|
i3-msg 'workspace "1: Comms"; append_layout ~/.config/i3/layouts/work-workspace1-comms.json'
|
||||||
|
i3-msg 'workspace "1: Comms"; exec gnome-terminal --title="weechat" -e weechat'
|
||||||
|
#i3-msg 'workspace "1: Comms"; exec /home/jfm/Tools/mattermost-desktop-3.7.1/mattermost-desktop'
|
||||||
|
i3-msg 'workspace "1: Comms"; move workspace to output DP-2-1'
|
||||||
|
sleep 2
|
||||||
|
|
||||||
|
i3-msg 'workspace "2: Web"; append_layout ~/.config/i3/layouts/work-workspace2-web.json'
|
||||||
|
i3-msg 'workspace "2: Web"; exec google-chrome-beta'
|
||||||
|
i3-msg 'workspace "2: Web"; move workspace to output DP-2-2'
|
||||||
|
sleep 2
|
||||||
|
|
||||||
|
i3-msg 'workspace "3: IDE"; append_layout ~/.config/i3/layouts/work-workspace3-ide.json'
|
||||||
|
i3-msg 'workspace "3: IDE"; move workspace to output DP-2-2'
|
||||||
|
sleep 2
|
||||||
|
|
||||||
|
i3-msg 'workspace "4: Work"; append_layout ~/.config/i3/layouts/work-workspace4-work.json'
|
||||||
|
i3-msg 'workspace "4: Work"; exec subl'
|
||||||
|
i3-msg 'workspace "4: Work"; exec gnome-terminal --title="shell1"'
|
||||||
|
i3-msg 'workspace "4: Work"; exec gnome-terminal --title="shell2"'
|
||||||
|
i3-msg 'workspace "4: Work"; move workspace to output DP-2-2'
|
||||||
|
sleep 2
|
||||||
|
|
||||||
|
i3-msg 'workspace "5: Media"; append_layout ~/.config/i3/layouts/work-workspace5-media.json'
|
||||||
|
i3-msg 'workspace "5: Media"; exec gnome-terminal --title="tasks" --profile laptop'
|
||||||
|
i3-msg 'workspace "5: Media"; exec gnome-terminal --title="newsbeuter" --profile laptop -e newsbeuter'
|
||||||
|
i3-msg 'workspace "5: Media"; exec gnome-terminal --title="music" --profile laptop -e ncmpc'
|
||||||
|
i3-msg 'workspace "5: Media"; move workspace to output eDP-1'
|
||||||
|
sleep 2
|
||||||
|
i3-msg 'workspace "6: REST"; append_layout ~/.config/i3/layouts/work-workspace6-rest.json'
|
||||||
|
i3-msg 'workspace "6: REST"; exec gnome-terminal --title="http-prompt" --working-directory=/home/jfm/Customers/TDC/ApiTest -e http-prompt'
|
||||||
|
i3-msg 'workspace "6: REST"; move workspace to output DP-2-1'
|
||||||
|
sleep 2
|
||||||
|
|
||||||
|
feh --bg-scale --zoom fill ~/.config/i3/wallpaper/frozen_leafs.jpg
|
||||||
|
~/.config/i3/polybar/work-polybar.sh
|
|
@ -0,0 +1,2 @@
|
||||||
|
#!/bin/sh
|
||||||
|
xrandr --output DP-2-1 --mode 1280x1024 --pos 0x0 --rotate normal --output DP-2-2 --mode 1920x1080 --pos 1280x0 --rotate normal --output DP-2-3 --off --output eDP-1 --primary --mode 2560x1440 --pos 3200x0 --rotate normal --output HDMI-2 --off --output HDMI-1 --off --output DP-2 --off --output DP-1 --off
|
Binary file not shown.
After Width: | Height: | Size: 9.4 MiB |
|
@ -0,0 +1,123 @@
|
||||||
|
|
||||||
|
;=====================================================
|
||||||
|
;
|
||||||
|
; To learn more about how to configure Polybar
|
||||||
|
; go to https://github.com/jaagr/polybar
|
||||||
|
;
|
||||||
|
; The README contains alot of information
|
||||||
|
;
|
||||||
|
;=====================================================
|
||||||
|
|
||||||
|
[global/wm]
|
||||||
|
margin-top = 5
|
||||||
|
margin-bottom = 5
|
||||||
|
|
||||||
|
[colors]
|
||||||
|
label-color = #BDBDBD
|
||||||
|
|
||||||
|
visible-background = #263238
|
||||||
|
visible-foreground = #009688
|
||||||
|
visible-underline = #009688
|
||||||
|
unfocused-background = #263238
|
||||||
|
unfocused-foreground = #BDBDBD
|
||||||
|
unfocused-underline= #BDBDBD
|
||||||
|
focused-background = #263238
|
||||||
|
focused-foreground = #009688
|
||||||
|
focused-underline = #009688
|
||||||
|
urgent-background = #263238
|
||||||
|
urgent-foreground = #BF360C
|
||||||
|
urgent-underline = #BF360C
|
||||||
|
|
||||||
|
[bar/topbar1]
|
||||||
|
monitor = eDP-1
|
||||||
|
width = 100%
|
||||||
|
height = 25
|
||||||
|
offset-x = 0
|
||||||
|
offset-y = 0
|
||||||
|
padding-right = 7
|
||||||
|
padding-left = 7
|
||||||
|
|
||||||
|
background = #263238
|
||||||
|
foreground = #FFFFFF00
|
||||||
|
|
||||||
|
font-0 = Roboto:size=11:weight=bold;2
|
||||||
|
font-1 = unifont:size=6:heavy:fontformat=truetype;-2
|
||||||
|
font-2 = siji:pixelsize=10;0
|
||||||
|
font-3 = FontAwesome:pixelsize=14;0
|
||||||
|
|
||||||
|
modules-left = i3
|
||||||
|
modules-center = date
|
||||||
|
modules-right =
|
||||||
|
|
||||||
|
tray-position = right
|
||||||
|
tray-padding = 5
|
||||||
|
tray-transparent = false
|
||||||
|
|
||||||
|
override-redirect = false
|
||||||
|
;wm-restack = i3
|
||||||
|
|
||||||
|
scroll-up = i3wm-wsnext
|
||||||
|
scroll-down = i3wm-wsprev
|
||||||
|
|
||||||
|
[module/i3]
|
||||||
|
type = internal/i3
|
||||||
|
format = <label-state> <label-mode>
|
||||||
|
index-sort = true
|
||||||
|
wrapping-scroll = true
|
||||||
|
strip-wsnumbers = false
|
||||||
|
pin-workspaces = true
|
||||||
|
|
||||||
|
label-mode-padding = 5
|
||||||
|
|
||||||
|
label-indicator-padding = 0
|
||||||
|
label-indicator-background = #BBBBBB
|
||||||
|
label-indicator-underline = ${colors.focused-underline}
|
||||||
|
|
||||||
|
label-visible-foreground = ${colors.visible-foreground}
|
||||||
|
label-visible-background = ${colors.visible-background}
|
||||||
|
label-visible-underline = ${colors.visible-underline}
|
||||||
|
label-visible-padding = 1
|
||||||
|
|
||||||
|
label-unfocused-foreground = ${colors.unfocused-foreground}
|
||||||
|
label-unfocused-background = ${colors.unfocused-background}
|
||||||
|
label-unfocused-underline = ${colors.unfocused-underline}
|
||||||
|
label-unfocused-padding = 1
|
||||||
|
|
||||||
|
label-focused-foreground = ${colors.focused-foreground}
|
||||||
|
label-focused-background = ${colors.focused-background}
|
||||||
|
label-focused-underline = ${colors.focused-underline}
|
||||||
|
label-focused-padding = 1
|
||||||
|
|
||||||
|
label-urgent-foreground = ${colors.urgent-foreground}
|
||||||
|
label-urgent-background = ${colors.urgent-background}
|
||||||
|
label-urgent-underline = ${colors.urgent-underline}
|
||||||
|
label-urgent-padding = 1
|
||||||
|
|
||||||
|
[module/date]
|
||||||
|
type = internal/date
|
||||||
|
interval = 5
|
||||||
|
|
||||||
|
label-foreground = ${colors.label-color}
|
||||||
|
|
||||||
|
date = "%d/%m-%y"
|
||||||
|
date-alt = " %d"
|
||||||
|
|
||||||
|
time = " %H:%M"
|
||||||
|
time-alt = %H:%M
|
||||||
|
|
||||||
|
label = %date% %time%
|
||||||
|
|
||||||
|
[module/wireless-network]
|
||||||
|
type = internal/network
|
||||||
|
interface = wlp4s0
|
||||||
|
|
||||||
|
format-connected = <label-connected>
|
||||||
|
format-disconnected = <label-disconnected>
|
||||||
|
format-packetloss = <animation-packetloss> <label-connected>
|
||||||
|
|
||||||
|
label-connected-foreground = ${colors.label-color}
|
||||||
|
label-connected-padding-right = 10
|
||||||
|
label-connected = %essid% %downspeed:9%
|
||||||
|
|
||||||
|
label-disconnected-foreground = ${colors.label-color}
|
||||||
|
label-disconnected = not connected
|
|
@ -0,0 +1,158 @@
|
||||||
|
|
||||||
|
;=====================================================
|
||||||
|
;
|
||||||
|
; To learn more about how to configure Polybar
|
||||||
|
; go to https://github.com/jaagr/polybar
|
||||||
|
;
|
||||||
|
; The README contains alot of information
|
||||||
|
;
|
||||||
|
;=====================================================
|
||||||
|
|
||||||
|
[global/wm]
|
||||||
|
margin-top = 5
|
||||||
|
margin-bottom = 5
|
||||||
|
|
||||||
|
[colors]
|
||||||
|
label-color = #BDBDBD
|
||||||
|
|
||||||
|
visible-background = #263238
|
||||||
|
visible-foreground = #009688
|
||||||
|
visible-underline = #FF009688
|
||||||
|
unfocused-background = #263238
|
||||||
|
unfocused-foreground = #BDBDBD
|
||||||
|
unfocused-underline= #FFABDBDBD
|
||||||
|
focused-background = #263238
|
||||||
|
focused-foreground = #009688
|
||||||
|
focused-underline = #FF009688
|
||||||
|
urgent-background = #263238
|
||||||
|
urgent-foreground = #BF360C
|
||||||
|
urgent-underline = #FFBF360C
|
||||||
|
|
||||||
|
[bar/topbar1]
|
||||||
|
monitor = DP-2-2
|
||||||
|
width = 100%
|
||||||
|
height = 25
|
||||||
|
offset-x = 0
|
||||||
|
offset-y = 0
|
||||||
|
padding-right = 7
|
||||||
|
padding-left = 7
|
||||||
|
|
||||||
|
underline-size = 3
|
||||||
|
underline-color = ${colors.visible-foreground}
|
||||||
|
|
||||||
|
background = #263238
|
||||||
|
foreground = #FFFFFF00
|
||||||
|
|
||||||
|
font-0 = Roboto:size=14:weight=bold;2
|
||||||
|
font-1 = unifont:size=6:heavy:fontformat=truetype;-2
|
||||||
|
font-2 = siji:pixelsize=10;0
|
||||||
|
font-3 = FontAwesome:pixelsize=14;0
|
||||||
|
|
||||||
|
modules-left = i3
|
||||||
|
modules-center = date
|
||||||
|
modules-right = mpd
|
||||||
|
|
||||||
|
tray-position = right
|
||||||
|
tray-padding = 5
|
||||||
|
tray-transparent = false
|
||||||
|
|
||||||
|
override-redirect = false
|
||||||
|
;wm-restack = i3
|
||||||
|
|
||||||
|
scroll-up = i3wm-wsnext
|
||||||
|
scroll-down = i3wm-wsprev
|
||||||
|
|
||||||
|
[bar/topbar2]
|
||||||
|
monitor = DP-2-1
|
||||||
|
width = 100%
|
||||||
|
height = 25
|
||||||
|
offset-x = 0
|
||||||
|
offset-y = 0
|
||||||
|
padding-right = 7
|
||||||
|
padding-left = 7
|
||||||
|
|
||||||
|
underline-size = 3
|
||||||
|
underline-color = ${colors.visible-foreground}
|
||||||
|
|
||||||
|
background = #263238
|
||||||
|
foreground = #00000000
|
||||||
|
|
||||||
|
font-0 = Roboto:size=14:weight=bold;2
|
||||||
|
font-1 = unifont:size=6:heavy:fontformat=truetype;-2
|
||||||
|
font-2 = siji:pixelsize=10;0
|
||||||
|
font-3 = FontAwesome:pixelsize=14;0
|
||||||
|
|
||||||
|
modules-left =
|
||||||
|
modules-center = i3
|
||||||
|
modules-right =
|
||||||
|
|
||||||
|
override-redirect = false
|
||||||
|
;wm-restack = i3
|
||||||
|
|
||||||
|
scroll-up = i3wm-wsnext
|
||||||
|
scroll-down = i3wm-wsprev
|
||||||
|
|
||||||
|
[module/i3]
|
||||||
|
type = internal/i3
|
||||||
|
format = <label-state> <label-mode>
|
||||||
|
index-sort = true
|
||||||
|
wrapping-scroll = true
|
||||||
|
strip-wsnumbers = false
|
||||||
|
pin-workspaces = true
|
||||||
|
|
||||||
|
label-mode-padding = 5
|
||||||
|
|
||||||
|
label-visible-foreground = ${colors.visible-foreground}
|
||||||
|
label-visible-background = ${colors.visible-background}
|
||||||
|
label-visible-padding = 1
|
||||||
|
|
||||||
|
label-unfocused-foreground = ${colors.unfocused-foreground}
|
||||||
|
label-unfocused-background = ${colors.unfocused-background}
|
||||||
|
label-unfocused-underline = ${colors.unfocused-underline}
|
||||||
|
label-unfocused-margin = 1
|
||||||
|
label-unfocused-padding-right = 1
|
||||||
|
|
||||||
|
label-focused-foreground = ${colors.focused-foreground}
|
||||||
|
label-focused-background = ${colors.focused-background}
|
||||||
|
label-focused-underline = ${colors.focused-underline}
|
||||||
|
label-focused-margin = 1
|
||||||
|
label-focused-padding-right = 1
|
||||||
|
|
||||||
|
label-urgent-foreground = ${colors.urgent-foreground}
|
||||||
|
label-urgent-background = ${colors.urgent-background}
|
||||||
|
label-urgent-underline = ${colors.urgent-underline}
|
||||||
|
label-urgent-margin = 1
|
||||||
|
label-urgent-padding-right = 1
|
||||||
|
|
||||||
|
[module/date]
|
||||||
|
type = internal/date
|
||||||
|
interval = 5
|
||||||
|
|
||||||
|
label-foreground = ${colors.label-color}
|
||||||
|
|
||||||
|
date = "%d/%m-%y"
|
||||||
|
date-alt = " %d"
|
||||||
|
|
||||||
|
time = " %H:%M"
|
||||||
|
time-alt = %H:%M
|
||||||
|
|
||||||
|
label = %date% %time%
|
||||||
|
|
||||||
|
[module/mpd]
|
||||||
|
type = internal/mpd
|
||||||
|
|
||||||
|
host = 127.0.0.1
|
||||||
|
port = 6600
|
||||||
|
#password = mysecretpassword
|
||||||
|
|
||||||
|
; Seconds to sleep between progressbar/song timer sync
|
||||||
|
; Default: 1
|
||||||
|
interval = 1
|
||||||
|
|
||||||
|
format-online = <label-time> <label-song>
|
||||||
|
label-song = %artist% - %title%
|
||||||
|
label-offline = MPD is offline
|
||||||
|
|
||||||
|
label-time-foreground = ${colors.label-color}
|
||||||
|
label-song-foreground = ${colors.label-color}
|
||||||
|
label-offline-foreground = ${colors.label-color}
|
|
@ -0,0 +1,6 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
killall polybar
|
||||||
|
#polybar traybar -c ~/.config/i3/polybar/config &
|
||||||
|
polybar topbar1 -c ~/.config/i3/polybar/home-config &
|
||||||
|
polybar topbar2 -c ~/.config/i3/polybar/home-config &
|
|
@ -0,0 +1,151 @@
|
||||||
|
;=====================================================
|
||||||
|
;
|
||||||
|
; To learn more about how to configure Polybar
|
||||||
|
; go to https://github.com/jaagr/polybar
|
||||||
|
;
|
||||||
|
; The README contains alot of information
|
||||||
|
;
|
||||||
|
;=====================================================
|
||||||
|
|
||||||
|
[global/wm]
|
||||||
|
margin-top = 5
|
||||||
|
margin-bottom = 5
|
||||||
|
|
||||||
|
[colors]
|
||||||
|
label-color = #BDBDBD
|
||||||
|
|
||||||
|
visible-background = #263238
|
||||||
|
visible-foreground = #009688
|
||||||
|
visible-underline = #FF009688
|
||||||
|
unfocused-background = #263238
|
||||||
|
unfocused-foreground = #BDBDBD
|
||||||
|
unfocused-underline= #FFBDBDBD
|
||||||
|
focused-background = #263238
|
||||||
|
focused-foreground = #009688
|
||||||
|
focused-underline = #FF009688
|
||||||
|
urgent-background = #263238
|
||||||
|
urgent-foreground = #BF360C
|
||||||
|
urgent-underline = #FFBF360C
|
||||||
|
|
||||||
|
[bar/topbar1]
|
||||||
|
monitor = eDP-1
|
||||||
|
width = 100%
|
||||||
|
height = 30
|
||||||
|
offset-x = 0
|
||||||
|
offset-y = 0
|
||||||
|
padding-right = 7
|
||||||
|
padding-left = 7
|
||||||
|
|
||||||
|
underline-size = 3
|
||||||
|
underline-color = ${colors.visible-foreground}
|
||||||
|
|
||||||
|
background = #263238
|
||||||
|
foreground = #FFFFFF00
|
||||||
|
|
||||||
|
font-0 = Roboto:size=14:weight=bold;2
|
||||||
|
font-1 = unifont:size=6:heavy:fontformat=truetype;-2
|
||||||
|
font-2 = siji:pixelsize=10;0
|
||||||
|
font-3 = FontAwesome:pixelsize=14;0
|
||||||
|
|
||||||
|
modules-left = date
|
||||||
|
modules-center = i3
|
||||||
|
modules-right = mpd battery
|
||||||
|
|
||||||
|
tray-position = right
|
||||||
|
tray-padding = 5
|
||||||
|
tray-transparent = false
|
||||||
|
|
||||||
|
override-redirect = false
|
||||||
|
|
||||||
|
scroll-up = i3wm-wsnext
|
||||||
|
scroll-down = i3wm-wsprev
|
||||||
|
|
||||||
|
[module/i3]
|
||||||
|
type = internal/i3
|
||||||
|
format = <label-state> <label-mode>
|
||||||
|
index-sort = true
|
||||||
|
wrapping-scroll = true
|
||||||
|
strip-wsnumbers = false
|
||||||
|
pin-workspaces = true
|
||||||
|
|
||||||
|
label-visible-foreground = ${colors.visible-foreground}
|
||||||
|
label-visible-background = ${colors.visible-background}
|
||||||
|
label-visible-padding = 1
|
||||||
|
|
||||||
|
label-unfocused-foreground = ${colors.unfocused-foreground}
|
||||||
|
label-unfocused-background = ${colors.unfocused-background}
|
||||||
|
label-unfocused-underline = ${colors.unfocused-underline}
|
||||||
|
label-unfocused-margin = 1
|
||||||
|
label-unfocused-padding-right = 1
|
||||||
|
|
||||||
|
label-focused-foreground = ${colors.focused-foreground}
|
||||||
|
label-focused-background = ${colors.focused-background}
|
||||||
|
label-focused-underline = ${colors.focused-underline}
|
||||||
|
label-focused-margin = 1
|
||||||
|
label-focused-padding-right = 1
|
||||||
|
|
||||||
|
label-urgent-foreground = ${colors.urgent-foreground}
|
||||||
|
label-urgent-background = ${colors.urgent-background}
|
||||||
|
label-urgent-underline = ${colors.urgent-underline}
|
||||||
|
label-urgent-margin = 1
|
||||||
|
label-urgent-padding-right = 1
|
||||||
|
|
||||||
|
[module/date]
|
||||||
|
type = internal/date
|
||||||
|
interval = 5
|
||||||
|
|
||||||
|
label-foreground = ${colors.label-color}
|
||||||
|
label-underline = ${colors.label-color}
|
||||||
|
|
||||||
|
|
||||||
|
date = "%d/%m-%y"
|
||||||
|
date-alt = " %d"
|
||||||
|
|
||||||
|
time = " %H:%M"
|
||||||
|
time-alt = %H:%M
|
||||||
|
|
||||||
|
label = %date% %time%
|
||||||
|
|
||||||
|
[module/mpd]
|
||||||
|
type = internal/mpd
|
||||||
|
|
||||||
|
host = 127.0.0.1
|
||||||
|
port = 6600
|
||||||
|
#password = mysecretpassword
|
||||||
|
|
||||||
|
; Seconds to sleep between progressbar/song timer sync
|
||||||
|
; Default: 1
|
||||||
|
interval = 1
|
||||||
|
|
||||||
|
format-online = <label-time> <label-song>
|
||||||
|
label-song = %artist% - %title%
|
||||||
|
label-offline = MPD is offline
|
||||||
|
|
||||||
|
label-time-foreground = ${colors.label-color}
|
||||||
|
label-song-foreground = ${colors.label-color}
|
||||||
|
label-offline-foreground = ${colors.label-color}
|
||||||
|
|
||||||
|
[module/battery]
|
||||||
|
type = internal/battery
|
||||||
|
|
||||||
|
; This is useful in case the battery never reports 100% charge
|
||||||
|
full-at = 99
|
||||||
|
|
||||||
|
; Use the following command to list batteries and adapters:
|
||||||
|
; $ ls -1 /sys/class/power_supply/
|
||||||
|
battery = BAT0
|
||||||
|
adapter = AC
|
||||||
|
|
||||||
|
label-charging = Battery: +%percentage%%
|
||||||
|
format-charging = <label-charging>
|
||||||
|
label-charging-foreground = ${colors.label-color}
|
||||||
|
label-charging-underline = ${colors.label-color}
|
||||||
|
label-charging-padding = 1
|
||||||
|
|
||||||
|
label-discharging = Battery: -%percentage%%
|
||||||
|
format-discharging = <label-discharging>
|
||||||
|
label-discharging-foreground = ${colors.label-color}
|
||||||
|
label-discharging-underline = ${colors.label-color}
|
||||||
|
label-discharging-padding = 1
|
||||||
|
|
||||||
|
poll-interval = 5
|
|
@ -0,0 +1,6 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
killall polybar
|
||||||
|
#polybar traybar -c ~/.config/i3/polybar/config &
|
||||||
|
polybar topbar1 -c ~/.config/i3/polybar/laptop-config &
|
||||||
|
#polybar topbar2 -c ~/.config/i3/polybar/config &
|
|
@ -0,0 +1,4 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
killall polybar
|
||||||
|
polybar topbar1 -c ~/.config/i3/polybar/config &
|
|
@ -0,0 +1,189 @@
|
||||||
|
|
||||||
|
;=====================================================
|
||||||
|
;
|
||||||
|
; To learn more about how to configure Polybar
|
||||||
|
; go to https://github.com/jaagr/polybar
|
||||||
|
;
|
||||||
|
; The README contains alot of information
|
||||||
|
;
|
||||||
|
;=====================================================
|
||||||
|
|
||||||
|
[global/wm]
|
||||||
|
margin-top = 5
|
||||||
|
margin-bottom = 5
|
||||||
|
|
||||||
|
[colors]
|
||||||
|
label-color = #BDBDBD
|
||||||
|
|
||||||
|
visible-background = #263238
|
||||||
|
visible-foreground = #009688
|
||||||
|
visible-underline = #FF009688
|
||||||
|
unfocused-background = #263238
|
||||||
|
unfocused-foreground = #BDBDBD
|
||||||
|
unfocused-underline= #FFBDBDBD
|
||||||
|
focused-background = #263238
|
||||||
|
focused-foreground = #009688
|
||||||
|
focused-underline = #FF009688
|
||||||
|
urgent-background = #263238
|
||||||
|
urgent-foreground = #BF360C
|
||||||
|
urgent-underline = #FFBF360C
|
||||||
|
|
||||||
|
[bar/topbar1]
|
||||||
|
monitor = DP-2-2
|
||||||
|
width = 100%
|
||||||
|
height = 25
|
||||||
|
offset-x = 0
|
||||||
|
offset-y = 0
|
||||||
|
padding-right = 7
|
||||||
|
padding-left = 7
|
||||||
|
|
||||||
|
underline-size = 3
|
||||||
|
underline-color = ${colors.visible-foreground}
|
||||||
|
|
||||||
|
background = #263238
|
||||||
|
foreground = #FFFFFF00
|
||||||
|
|
||||||
|
font-0 = Roboto:size=14:weight=bold;2
|
||||||
|
font-1 = unifont:size=6:heavy:fontformat=truetype;-2
|
||||||
|
font-2 = siji:pixelsize=10;0
|
||||||
|
font-3 = FontAwesome:pixelsize=14;0
|
||||||
|
|
||||||
|
modules-left = date
|
||||||
|
modules-center = i3
|
||||||
|
modules-right = mpd
|
||||||
|
|
||||||
|
tray-position = right
|
||||||
|
tray-padding = 5
|
||||||
|
tray-transparent = false
|
||||||
|
|
||||||
|
override-redirect = false
|
||||||
|
;wm-restack = i3
|
||||||
|
|
||||||
|
scroll-up = i3wm-wsnext
|
||||||
|
scroll-down = i3wm-wsprev
|
||||||
|
|
||||||
|
[bar/topbar2]
|
||||||
|
monitor = DP-2-1
|
||||||
|
width = 100%
|
||||||
|
height = 25
|
||||||
|
offset-x = 0
|
||||||
|
offset-y = 0
|
||||||
|
padding-right = 7
|
||||||
|
padding-left = 7
|
||||||
|
|
||||||
|
underline-size = 3
|
||||||
|
underline-color = ${colors.visible-foreground}
|
||||||
|
|
||||||
|
background = #263238
|
||||||
|
foreground = #00000000
|
||||||
|
|
||||||
|
font-0 = Roboto:size=14:weight=bold;2
|
||||||
|
font-1 = unifont:size=6:heavy:fontformat=truetype;-2
|
||||||
|
font-2 = siji:pixelsize=10;0
|
||||||
|
font-3 = FontAwesome:pixelsize=14;0
|
||||||
|
|
||||||
|
modules-left =
|
||||||
|
modules-center = i3
|
||||||
|
modules-right =
|
||||||
|
|
||||||
|
override-redirect = false
|
||||||
|
;wm-restack = i3
|
||||||
|
|
||||||
|
scroll-up = i3wm-wsnext
|
||||||
|
scroll-down = i3wm-wsprev
|
||||||
|
|
||||||
|
[bar/topbar3]
|
||||||
|
monitor = eDP-1
|
||||||
|
width = 100%
|
||||||
|
height = 25
|
||||||
|
offset-x = 0
|
||||||
|
offset-y = 0
|
||||||
|
padding-right = 7
|
||||||
|
padding-left = 7
|
||||||
|
|
||||||
|
underline-size = 3
|
||||||
|
underline-color = ${colors.visible-foreground}
|
||||||
|
|
||||||
|
background = #263238
|
||||||
|
foreground = #00000000
|
||||||
|
|
||||||
|
font-0 = Roboto:size=14:weight=bold;2
|
||||||
|
font-1 = unifont:size=6:heavy:fontformat=truetype;-2
|
||||||
|
font-2 = siji:pixelsize=10;0
|
||||||
|
font-3 = FontAwesome:pixelsize=14;0
|
||||||
|
|
||||||
|
modules-left =
|
||||||
|
modules-center = i3
|
||||||
|
modules-right =
|
||||||
|
|
||||||
|
override-redirect = false
|
||||||
|
;wm-restack = i3
|
||||||
|
|
||||||
|
scroll-up = i3wm-wsnext
|
||||||
|
scroll-down = i3wm-wsprev
|
||||||
|
|
||||||
|
[module/i3]
|
||||||
|
type = internal/i3
|
||||||
|
format = <label-state> <label-mode>
|
||||||
|
index-sort = true
|
||||||
|
wrapping-scroll = true
|
||||||
|
strip-wsnumbers = false
|
||||||
|
pin-workspaces = true
|
||||||
|
|
||||||
|
label-mode-padding = 5
|
||||||
|
|
||||||
|
label-visible-foreground = ${colors.visible-foreground}
|
||||||
|
label-visible-background = ${colors.visible-background}
|
||||||
|
label-visible-padding = 1
|
||||||
|
|
||||||
|
label-unfocused-foreground = ${colors.unfocused-foreground}
|
||||||
|
label-unfocused-background = ${colors.unfocused-background}
|
||||||
|
label-unfocused-underline = ${colors.unfocused-underline}
|
||||||
|
label-unfocused-margin = 1
|
||||||
|
label-unfocused-padding-right = 1
|
||||||
|
|
||||||
|
label-focused-foreground = ${colors.focused-foreground}
|
||||||
|
label-focused-background = ${colors.focused-background}
|
||||||
|
label-focused-underline = ${colors.focused-underline}
|
||||||
|
label-focused-margin = 1
|
||||||
|
label-focused-padding-right = 1
|
||||||
|
|
||||||
|
label-urgent-foreground = ${colors.urgent-foreground}
|
||||||
|
label-urgent-background = ${colors.urgent-background}
|
||||||
|
label-urgent-underline = ${colors.urgent-underline}
|
||||||
|
label-urgent-margin = 1
|
||||||
|
label-urgent-padding-right = 1
|
||||||
|
|
||||||
|
[module/date]
|
||||||
|
type = internal/date
|
||||||
|
interval = 5
|
||||||
|
|
||||||
|
label-foreground = ${colors.label-color}
|
||||||
|
label-underline = ${colors.label-color}
|
||||||
|
|
||||||
|
date = "%d/%m-%y"
|
||||||
|
date-alt = " %d"
|
||||||
|
|
||||||
|
time = " %H:%M"
|
||||||
|
time-alt = %H:%M
|
||||||
|
|
||||||
|
label = %date% %time%
|
||||||
|
|
||||||
|
[module/mpd]
|
||||||
|
type = internal/mpd
|
||||||
|
|
||||||
|
host = 127.0.0.1
|
||||||
|
port = 6600
|
||||||
|
#password = mysecretpassword
|
||||||
|
|
||||||
|
; Seconds to sleep between progressbar/song timer sync
|
||||||
|
; Default: 1
|
||||||
|
interval = 1
|
||||||
|
|
||||||
|
format-online = <label-time> <label-song>
|
||||||
|
label-song = %artist% - %title%
|
||||||
|
label-offline = MPD is offline
|
||||||
|
|
||||||
|
label-time-foreground = ${colors.label-color}
|
||||||
|
label-song-foreground = ${colors.label-color}
|
||||||
|
label-offline-foreground = ${colors.label-color}
|
|
@ -0,0 +1,6 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
killall polybar
|
||||||
|
polybar topbar1 -c ~/.config/i3/polybar/work-config &
|
||||||
|
polybar topbar2 -c ~/.config/i3/polybar/work-config &
|
||||||
|
polybar topbar3 -c ~/.config/i3/polybar/work-config &
|
|
@ -0,0 +1,9 @@
|
||||||
|
|
||||||
|
# rofi.location: 1
|
||||||
|
#rofi.font: "Roboto 10"
|
||||||
|
rofi.lines: 5
|
||||||
|
rofi.color-enabled: true
|
||||||
|
rofi.color-window: #26C6DA, #26C6DA, #1e2529
|
||||||
|
rofi.color-normal: #26C6DA, #424242, #26C6DA
|
||||||
|
rofi.color-active: #26C6DA, #424242, #26C6DA
|
||||||
|
rofi.color-urgent: #26C6DA, #424242, #26C6DA
|
Loading…
Reference in New Issue