Compare commits

...

4 Commits

Author SHA1 Message Date
Joachim Nielandt
2872158486 Added rofi to chezmoi 2020-07-18 11:51:53 +02:00
Joachim Nielandt
5abb7fcbcf .Xresources now template. 2020-07-18 11:17:41 +02:00
2ea8d85646 Playing around with workspace colors... introducing gruvbox palette. 2020-07-17 23:57:22 +02:00
b4433234db First rounded setup, let's gestate. 2020-07-17 23:26:28 +02:00
12 changed files with 534 additions and 25 deletions

View File

@ -3,22 +3,36 @@
! x.y > straight child
! x*y > any depth in resources hierarchy
!
URxvt.transparent: true
URxvt.shading:20
!true transparency
urxvt*depth: 32
!urxvt*background: rgba:0000/0000/0200/c800
URxvt.background: [90]#1d2021
!fake transparency (takes precedence)
!URxvt.transparent: true
!URxvt.shading: 10
! Included this so you know how to make your foreground not match the color of your background
! light0_hard gruvbox
URxvt.foreground: #f9f5d7
! dark0 gruvbox
URxvt*background: #1d2021
!URxvt*background: #1d2021
URxvt*scrollBar: false
URxvt*scrollstyle: plain
URxvt.internalBorder: 8
URxvt.internalBorder: 15
URxvt*saveLines: 65500
! starts as a login shell, prepending - to argv[0] of the shell.
URxvt*loginShell: false
!URxvt*termName: screen-256color
{{- if eq .chezmoi.hostname "carbonraptor" }}
URxvt.font: xft:Fura Code Nerd Font Mono:size=10:antialias=true
URxvt.boldfont: xft:Fura Code Nerd Font Mono:bold:size=10
{{- else }}
URxvt.font: xft:Fura Code Nerd Font Mono:size=8:antialias=true
URxvt.boldfont: xft:Fura Code Nerd Font Mono:bold:size=8
{{- end }}
! Give us a nice cursor then
Xcursor.theme: Breeze

230
dot_config/picom/picom.conf Normal file
View File

@ -0,0 +1,230 @@
# Thank you code_nomad: http://9m.no/ꪯ鵞
# and Arch Wiki contributors: https://wiki.archlinux.org/index.php/Compton
#################################
#
# Backend
#
#################################
# Backend to use: "xrender" or "glx".
# GLX backend is typically much faster but depends on a sane driver.
backend = "glx";
#################################
#
# GLX backend
#
#################################
glx-no-stencil = true;
# GLX backend: Copy unmodified regions from front buffer instead of redrawing them all.
# My tests with nvidia-drivers show a 10% decrease in performance when the whole screen is modified,
# but a 20% increase when only 1/4 is.
# My tests on nouveau show terrible slowdown.
glx-copy-from-front = false;
# GLX backend: Use MESA_copy_sub_buffer to do partial screen update.
# My tests on nouveau shows a 200% performance boost when only 1/4 of the screen is updated.
# May break VSync and is not available on some drivers.
# Overrides --glx-copy-from-front.
# glx-use-copysubbuffermesa = true;
# GLX backend: Avoid rebinding pixmap on window damage.
# Probably could improve performance on rapid window content changes, but is known to break things on some drivers (LLVMpipe).
# Recommended if it works.
# glx-no-rebind-pixmap = true;
# GLX backend: GLX buffer swap method we assume.
# Could be undefined (0), copy (1), exchange (2), 3-6, or buffer-age (-1).
# undefined is the slowest and the safest, and the default value.
# copy is fastest, but may fail on some drivers,
# 2-6 are gradually slower but safer (6 is still faster than 0).
# Usually, double buffer means 2, triple buffer means 3.
# buffer-age means auto-detect using GLX_EXT_buffer_age, supported by some drivers.
# Useless with --glx-use-copysubbuffermesa.
# Partially breaks --resize-damage.
# Defaults to undefined.
#glx-swap-method = "undefined";
#################################
#
# Shadows
#
#################################
# Enabled client-side shadows on windows.
shadow = false;
# The blur radius for shadows. (default 12)
shadow-radius = 5;
# The left offset for shadows. (default -15)
shadow-offset-x = -5;
# The top offset for shadows. (default -15)
shadow-offset-y = -5;
# The translucency for shadows. (default .75)
shadow-opacity = 0.5;
# Set if you want different colour shadows
# shadow-red = 0.0;
# shadow-green = 0.0;
# shadow-blue = 0.0;
# The shadow exclude options are helpful if you have shadows enabled. Due to the way picom draws its shadows, certain applications will have visual glitches
# (most applications are fine, only apps that do weird things with xshapes or argb are affected).
# This list includes all the affected apps I found in my testing. The "! name~=''" part excludes shadows on any "Unknown" windows, this prevents a visual glitch with the XFWM alt tab switcher.
shadow-exclude = [
"! name~=''",
"name = 'Notification'",
"name = 'Plank'",
"name = 'Docky'",
"name = 'Kupfer'",
"name = 'xfce4-notifyd'",
"name = 'cpt_frame_window'",
"name *= 'VLC'",
"name *= 'compton'",
"name *= 'picom'",
"name *= 'Chromium'",
"name *= 'Chrome'",
"class_g = 'Firefox' && argb",
"class_g = 'Conky'",
"class_g = 'Kupfer'",
"class_g = 'Synapse'",
"class_g ?= 'Notify-osd'",
"class_g ?= 'Cairo-dock'",
"class_g ?= 'Xfce4-notifyd'",
"class_g ?= 'Xfce4-power-manager'",
"_GTK_FRAME_EXTENTS@:c",
"_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'"
];
# Avoid drawing shadow on all shaped windows (see also: --detect-rounded-corners)
shadow-ignore-shaped = false;
#################################
#
# Opacity
#
#################################
inactive-opacity = 0.8;
active-opacity = 1;
frame-opacity = 1;
inactive-opacity-override = false;
# Dim inactive windows. (0.0 - 1.0)
# inactive-dim = 0.2;
# Do not let dimness adjust based on window opacity.
# inactive-dim-fixed = true;
# Blur background of transparent windows. Bad performance with X Render backend. GLX backend is preferred.
blur-background = true;
# Blur background of opaque windows with transparent frames as well.
blur-background-frame = true;
# Do not let blur radius adjust based on window opacity.
blur-background-fixed = true;
blur-background-exclude = [
"window_type = 'dock'",
"window_type = 'desktop'"
];
# this supposedly fixes blur artifacts in terminal (saw some black lines)
use-damage = false
#################################
#
# Fading
#
#################################
# Fade windows during opacity changes.
fading = true;
# The time between steps in a fade in milliseconds. (default 10).
fade-delta = 4;
# Opacity change between steps while fading in. (default 0.028).
fade-in-step = 0.03;
# Opacity change between steps while fading out. (default 0.03).
fade-out-step = 0.03;
# Fade windows in/out when opening/closing
# no-fading-openclose = true;
# Specify a list of conditions of windows that should not be faded.
fade-exclude = [ ];
#################################
#
# Other
#
#################################
# Try to detect WM windows and mark them as active.
mark-wmwin-focused = true;
# Mark all non-WM but override-redirect windows active (e.g. menus).
mark-ovredir-focused = true;
# Use EWMH _NET_WM_ACTIVE_WINDOW to determine which window is focused instead of using FocusIn/Out events.
# Usually more reliable but depends on a EWMH-compliant WM.
use-ewmh-active-win = true;
# Detect rounded corners and treat them as rectangular when --shadow-ignore-shaped is on.
detect-rounded-corners = true;
# Detect _NET_WM_OPACITY on client windows, useful for window managers not passing _NET_WM_OPACITY of client windows to frame windows.
# This prevents opacity being ignored for some apps.
# For example without this enabled my xfce4-notifyd is 100% opacity no matter what.
detect-client-opacity = true;
# Specify refresh rate of the screen.
# If not specified or 0, picom will try detecting this with X RandR extension.
refresh-rate = 0;
# Vertical synchronization: match the refresh rate of the monitor
vsync = true;
# Enable DBE painting mode, intended to use with VSync to (hopefully) eliminate tearing.
# Reported to have no effect, though.
dbe = false;
# Limit picom to repaint at most once every 1 / refresh_rate second to boost performance.
# This should not be used with --vsync drm/opengl/opengl-oml as they essentially does --sw-opti's job already,
# unless you wish to specify a lower refresh rate than the actual value.
#sw-opti = true;
# Unredirect all windows if a full-screen opaque window is detected, to maximize performance for full-screen windows, like games.
# Known to cause flickering when redirecting/unredirecting windows.
unredir-if-possible = false;
# Specify a list of conditions of windows that should always be considered focused.
focus-exclude = [ ];
# Use WM_TRANSIENT_FOR to group windows, and consider windows in the same group focused at the same time.
detect-transient = true;
# Use WM_CLIENT_LEADER to group windows, and consider windows in the same group focused at the same time.
# WM_TRANSIENT_FOR has higher priority if --detect-transient is enabled, too.
detect-client-leader = true;
#################################
#
# Window type settings
#
#################################
wintypes:
{
tooltip =
{
# fade: Fade the particular type of windows.
fade = true;
# shadow: Give those windows shadow
shadow = false;
# opacity: Default opacity for the type of windows.
opacity = 0.85;
# focus: Whether to always consider windows of this type focused.
focus = true;
};
};
######################
#
# XSync
# See: https://github.com/yshui/picom/commit/b18d46bcbdc35a3b5620d817dd46fbc76485c20d
#
######################
# Use X Sync fence to sync clients' draw calls. Needed on nvidia-drivers with GLX backend for some users.
xrender-sync-fence = true;

1
dot_config/symlink_rofi Normal file
View File

@ -0,0 +1 @@
../.dotfiles/rofi

View File

@ -7,13 +7,15 @@ set $mod Mod4
# is used in the bar {} block below.
# font pango:monospace 8
# overrides title bars -> makes sure i3-gaps can do its thing
for_window [class="^.*"] border pixel 2
for_window [class="^.*"] border pixel 0
# for jetbrains windows... focus on dialogs!
for_window [class="^jetbrains-.+"][window_type=dialog] focus
# fix citrix windows
for_window [class="Wfica_Seamless"] floating enable
border_radius 15
# Define names for default workspaces for which we configure key bindings later on.
# We use variables to avoid repeating the names in multiple places.
# Using the prefix of workspaces in order to be able to define ordering for special workspaces.
@ -43,8 +45,8 @@ assign [class="Wfica_Seamless"] $ws10
#assign [class="jetbrains-datagrip"] 9
# i3-gaps
gaps inner 10
gaps outer 5
gaps inner 10
gaps outer 5
# Disallow endless looping of focus: extreme right is extreme right, don't flip to extreme left whenever you want...
focus_wrapping no

View File

@ -1,6 +1,6 @@
#!/bin/bash
# the screenshot will be saved here
TARGETDIR=/home/jnieland/pictures/screenshots
TARGETDIR=$HOME/pictures/screenshots
# make a screenshot filename
TARGETFILE=screenshot.$(date '+%Y.%m.%d.%H.%M.%S').png
# start the process

View File

@ -49,8 +49,9 @@ faded_orange = #af3a03
# want to get colors from xrdb / .Xresources?
# background = ${xrdb:color0:#222}
bar-background = #00FFFFFF
# bar-background = #00FFFFFF
# ARGB
bar-background = #dd1d2021
[bar/general]
width = 100%
@ -62,17 +63,21 @@ fixed-center = true
line-size = 2
line-color = #f00
; rounded corners of the bar
radius = 0.0
radius = 10.0
;this makes sure that i3 doesn't reposition everything when polybar becomes active... is shit
override-redirect = false
wm-restack = i3
; all the bar colors
background = ${colors.bar-background}
foreground = ${colors.light0_hard}
border-color = ${colors.bright_blue}
;border-color = ${colors.bright_blue}
border-color = #00FFFFFF
border-left-size = 15
border-right-size = 15
border-top-size = 5
; spaces on begin/end of bar
padding-left = 2
padding-right = 2
padding-left = 5
padding-right = 5
; set the bar fonts
;font-0 = fixed:pixelsize=10;1
;font-0 = "Wuncon Siji:pixelsize=15;1"
@ -92,6 +97,7 @@ cursor-scroll = pointer
[bar/primary]
inherit = bar/general
monitor = ${env:MONITOR:eDP-1}
bottom = false
;offset-x = 2%
;offset-y = 1%
;i'm faking the left and right margins with a fat border. i'm helpless
@ -106,7 +112,7 @@ modules-right = net wifi0 vpn powermenu
; TRAY MANAGEMENT
;tray-position = right
tray-position = ${env:TRAY_POSITION:none}
;tray-transparent = true
tray-transparent = false
tray-detached = false
tray-maxsize = 16
;tray-background = ${colors.background-alt}
@ -133,12 +139,12 @@ monitor = ${env:MONITOR:eDP-1}
modules-right = pulseaudio
modules-center = player-mpris-tail
modules-left = date info-hackspeed
padding-left = 3
padding-left = 2
padding-right = 2
[module/player-mpris-tail]
type = custom/script
exec = ~/.config/polybar/polybar-scripts/polybar-scripts/player-mpris-tail/player-mpris-tail.py -f '{icon} {artist} - {title}' --icon-playing  --icon-paused  --icon-stopped  --icon-none ﱙ
exec = ~/.config/polybar/polybar-scripts/polybar-scripts/player-mpris-tail/player-mpris-tail.py -f '{icon} {artist} - {:t30:{title}:}' --icon-playing  --icon-paused  --icon-stopped  --icon-none ﱙ
tail = true
label = %output%
label-foreground = ${colors.light0_hard}
@ -196,8 +202,13 @@ format-prefix-foreground = ${colors.light0}
[module/filesystem]
type = internal/fs
interval = 25
; mounts differ depending on the machine
{{- if eq .chezmoi.hostname "dome" }}
mount-0 = /
{{ else if eq .chezmoi.hostname "carbonraptor" -}}
mount-0 = /
mount-1 = /mnt/ext4
{{- end }}
;label-mounted = %{F#0a81f5}%mountpoint%%{F-} %percentage_used%%
;#b8bb26
label-mounted = %{F#b8bb26}%mountpoint%%{F-} %percentage_used%%
@ -242,10 +253,19 @@ pin-workspaces = true
; Default: false
strip-wsnumbers = true
;ws-icon-0 = 1:1;
;ws-icon-1 = 2:2;
;ws-icon-2 = 3:3;
;ws-icon-3 = 4:4;
;bright_red = #fb4934
;bright_green = #b8bb26
;bright_yellow = #fabd2f
;bright_blue = #83a598
;bright_purple = #d3869b
;bright_aqua = #8ec07c
;bright_orange = #fe8019
;ws-icon-1 = 1:1;%{B#b58900}1%{B-}
;ws-icon-0 = 1:1;%{F#db4934}%{F-}
;ws-icon-1 = 2:2;%{F#b8bb26}%{F-}
;ws-icon-2 = 3:3;%{F#fabd2f}%{F-}
;ws-icon-3 = 4:4;%{F#83a598}%{F-}
;ws-icon-4 = 5:5;%{F#d3869b}%{F-}
;ws-icon-4 = 5:5;
;ws-icon-5 = 6:6;
;ws-icon-6 = 7:7;
@ -259,7 +279,7 @@ ws-icon-default = ﱤ
; mode menu styling
label-mode-padding = 1
label-mode-foreground = ${colors.light0_hard}
label-mode-background = ${colors.dark0_hard}
label-mode-background = ${colors.dark2}
;label-mode-underline = ${colors.light2}
; can use: %icon% %name% %index

View File

@ -17,7 +17,8 @@ for m in $(polybar --list-monitors | cut -d":" -f1); do
echo "Launching polybar on monitor $m"
MONITOR=$m TRAY_POSITION=none polybar --reload secondary &
if [ "$started_tray" = false ]; then
MONITOR=$m TRAY_POSITION=right polybar --reload primary &
# change none to right if you want to see the tray
MONITOR=$m TRAY_POSITION=none polybar --reload primary &
started_tray=true
echo "launching $m with tray"
else

4
dot_dotfiles/rofi/config Normal file
View File

@ -0,0 +1,4 @@
rofi.combi-modi: window,drun,ssh
rofi.font: Fura Code 12
rofi.modi: combi
rofi.theme: ~/.config/rofi/gruvbox-dark-mod.rasi

View File

@ -0,0 +1,2 @@
#rofi -show run
rofi -show run -modi "run,ssh,window" -sidebar-mode

View File

@ -0,0 +1,19 @@
# Config for rofi-wifi-menu
# position values:
# 1 2 3
# 8 0 4
# 7 6 5
POSITION=3
#y-offset
YOFF=17
#x-offset
XOFF=0
#fields to be displayed
FIELDS=SSID,SECURITY,BARS
#font
FONT="Fura Code 8"

View File

@ -0,0 +1,214 @@
/* ==========================================================================
Rofi color theme
Based on the Gruvbox color scheme for Vim by morhetz
https://github.com/morhetz/gruvbox
File: gruvbox-dark.rasi
Desc: Gruvbox dark color theme for Rofi
Author: bardisty <b@bah.im>
Source: https://github.com/bardisty/gruvbox-rofi
Modified: Mon Feb 12 2018 04:08:43 PST -0800
========================================================================== */
* {
/* Theme settings */
highlight: bold italic;
scrollbar: true;
/* Gruvbox dark colors */
dark0-hard: #1d2021;
dark0: #282828;
dark0-soft: #32302f;
dark1: #3c3836;
dark2: #504945;
dark3: #665c54;
dark4: #7c6f64;
gray-245: #928374;
gray-244: #928374;
light0-hard: #f9f5d7;
light0: #fbf1c7;
light0-soft: #f2e5bc;
light1: #ebdbb2;
light2: #d5c4a1;
light3: #bdae93;
light4: #a89984;
bright-red: #fb4934;
bright-green: #b8bb26;
bright-yellow: #fabd2f;
bright-blue: #83a598;
bright-purple: #d3869b;
bright-aqua: #8ec07c;
bright-orange: #fe8019;
neutral-red: #cc241d;
neutral-green: #98971a;
neutral-yellow: #d79921;
neutral-blue: #458588;
neutral-purple: #b16286;
neutral-aqua: #689d6a;
neutral-orange: #d65d0e;
faded-red: #9d0006;
faded-green: #79740e;
faded-yellow: #b57614;
faded-blue: #076678;
faded-purple: #8f3f71;
faded-aqua: #427b58;
faded-orange: #af3a03;
/* Theme colors */
background: @dark0;
background-color: @background;
foreground: @light0-hard;
border-color: @gray-245;
separatorcolor: @border-color;
scrollbar-handle: @bright-orange;
normal-background: @background;
normal-foreground: @foreground;
alternate-normal-background: @dark0;
alternate-normal-foreground: @foreground;
selected-normal-background: @dark4;
selected-normal-foreground: @bright-green;
active-background: @neutral-yellow;
active-foreground: @background;
alternate-active-background: @active-background;
alternate-active-foreground: @active-foreground;
selected-active-background: @bright-yellow;
selected-active-foreground: @active-foreground;
urgent-background: @faded-red;
urgent-foreground: @background;
alternate-urgent-background: @urgent-background;
alternate-urgent-foreground: @urgent-foreground;
selected-urgent-background: @gruvbox-dark-red-light;
selected-urgent-foreground: @urgent-foreground;
}
window {
background-color: @background;
border: 2;
border-radius: 10;
padding: 20;
}
mainbox {
border: 0;
padding: 0;
}
message {
border: 2px 0 0;
border-color: @separatorcolor;
padding: 1px;
}
textbox {
highlight: @highlight;
text-color: @foreground;
}
listview {
border: 2px solid 0 0;
padding: 2px 0 0;
border-color: @separatorcolor;
spacing: 2px;
scrollbar: @scrollbar;
}
element {
border: 0;
padding: 2px;
}
element.normal.normal {
background-color: @normal-background;
text-color: @normal-foreground;
}
element.normal.urgent {
background-color: @urgent-background;
text-color: @urgent-foreground;
}
element.normal.active {
background-color: @active-background;
text-color: @active-foreground;
}
element.selected.normal {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
element.selected.urgent {
background-color: @selected-urgent-background;
text-color: @selected-urgent-foreground;
}
element.selected.active {
background-color: @selected-active-background;
text-color: @selected-active-foreground;
}
element.alternate.normal {
background-color: @alternate-normal-background;
text-color: @alternate-normal-foreground;
}
element.alternate.urgent {
background-color: @alternate-urgent-background;
text-color: @alternate-urgent-foreground;
}
element.alternate.active {
background-color: @alternate-active-background;
text-color: @alternate-active-foreground;
}
scrollbar {
width: 4px;
border: 0;
handle-color: @scrollbar-handle;
handle-width: 8px;
padding: 0;
}
mode-switcher {
border: 2px 0 0;
border-color: @separatorcolor;
}
inputbar {
spacing: 0;
text-color: @normal-foreground;
padding: 2px;
children: [ prompt, textbox-prompt-sep, entry, case-indicator ];
}
case-indicator,
entry,
prompt,
button {
spacing: 0;
text-color: @normal-foreground;
}
button.selected {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
textbox-prompt-sep {
expand: false;
str: ":";
text-color: @normal-foreground;
margin: 0 0.3em 0 0;
}

View File

@ -58,8 +58,10 @@ Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' }
Plug 'junegunn/fzf.vim'
" ripgrep integration
Plug 'jremmen/vim-ripgrep'
" intellisense like plugin!
" Plug 'neoclide/coc.nvim', {'branch': 'release'}
" haskell auto completer (general intellisense autocomplete?)
Plug 'neoclide/coc.nvim', {'branch': 'release'}
" haskell support
Plug 'neovimhaskell/haskell-vim'
call plug#end()