From df9ddfd142e88c42ffb584e71626379a438b89f3 Mon Sep 17 00:00:00 2001 From: Quentin Duchemin Date: Thu, 10 Jan 2019 10:45:52 +0100 Subject: [PATCH] Create different config files for divergences between desktop and laptop See README for details. tldr pull and launch ~/.init_config.sh [laptop|desk] to create symlinks --- .config/i3/config.laptop | 213 +++++++++++ .config/polybar/config.laptop | 331 ++++++++++++++++++ .config/polybar/scripts/filesystem.sh.laptop | 25 ++ .../polybar/scripts/launch_polybar.sh.laptop | 14 + .../scripts/updates-arch-combined.sh.laptop | 13 + .init_config.sh | 23 ++ README.md | 4 +- 7 files changed, 622 insertions(+), 1 deletion(-) create mode 100644 .config/i3/config.laptop create mode 100644 .config/polybar/config.laptop create mode 100755 .config/polybar/scripts/filesystem.sh.laptop create mode 100755 .config/polybar/scripts/launch_polybar.sh.laptop create mode 100755 .config/polybar/scripts/updates-arch-combined.sh.laptop create mode 100755 .init_config.sh diff --git a/.config/i3/config.laptop b/.config/i3/config.laptop new file mode 100644 index 0000000..4303e28 --- /dev/null +++ b/.config/i3/config.laptop @@ -0,0 +1,213 @@ +# 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 Mod1 + +# Font for window titles. Will also be used by the bar unless a different font +# is used in the bar {} block below. +font pango:Roboto, Bold 10 + +# Use Mouse+$mod to drag floating windows to their wanted position +floating_modifier $mod + +# start a terminal +bindsym $mod+Return exec i3-sensible-terminal + +# kill focused window +bindsym $mod+q kill + +# start dmenu (a program launcher) +bindsym $mod+d exec rofi -show run -theme sidebar +bindsym $mod+Shift+d exec ~/.config/rofi/emoji-picker.py + +# 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 + +# 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+z 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+Shift+q focus parent + +# switch to workspace +bindsym $mod+ampersand workspace number 1 +bindsym $mod+eacute workspace number 2 +bindsym $mod+quotedbl workspace number 3 +bindsym $mod+apostrophe workspace number 4 +bindsym $mod+parenleft workspace number 5 +bindsym $mod+minus workspace number 6 +bindsym $mod+egrave workspace number 7 +bindsym $mod+underscore workspace number 8 +bindsym $mod+ccedilla workspace number 9 +bindsym $mod+agrave workspace number 10 + +# move focused container to workspace +bindsym $mod+Shift+ampersand move container to workspace 1 +bindsym $mod+Shift+eacute move container to workspace 2 +bindsym $mod+Shift+quotedbl move container to workspace 3 +bindsym $mod+Shift+apostrophe move container to workspace 4 +bindsym $mod+Shift+5 move container to workspace 5 +bindsym $mod+Shift+minus move container to workspace 6 +bindsym $mod+Shift+egrave move container to workspace 7 +bindsym $mod+Shift+underscore move container to workspace 8 +bindsym $mod+Shift+ccedilla move container to workspace 9 +bindsym $mod+Shift+agrave 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'" + +# no border nor title +new_window none + +# hide borders when touching edges +hide_edge_borders both + +#do not sync mouse position and focus +focus_follows_mouse no + +# 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. + + # 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" + +#put workspace 1 on main screen +workspace 1 output DVI-D-0 +workspace 2 output HDMI-0 +workspace 3 output DVI-D-0 +workspace 4 output HDMI-0 + +#start compositor +exec --no-startup-id compton + +#start polybar +exec_always --no-startup-id $HOME/.config/polybar/scripts/launch_polybar.sh + +#fr +exec setxkbmap fr + +#numlock +exec numlockx on + +#popup config Firefox / Terminator / General Purpose +for_window [window_role="Steam"] floating enable +for_window [window_role="About"] floating enable +for_window [window_role="Organizer"] floating enable +for_window [title="^Terminator *"] floating enable +for_window [window_role="pop-up"] floating enable +for_window [window_role="task_dialog"] floating enable +for_window [title="Preferences$"] floating enable + +set $Locker ~/.config/i3/lock/lock.sh +#Just lock the screen +bindsym $mod+l exec --no-startup-id $Locker && sleep 1 + +#Lock and suspend to RAM +bindsym $mod+Shift+l exec --no-startup-id $Locker && systemctl suspend +exec_always --no-startup-id xset dpms 600 +exec_always --no-startup-id xautolock -time 9 -locker $Locker + +#Notifications +exec --no-startup-id dunst + +#i3 gaps +gaps inner 10 +gaps outer 0 +smart_gaps on + +# Set mouse acceleration +exec_always --no-startup-id xinput set-prop 'FocalTechPS/2 FocalTech Touchpad' 'libinput Accel Speed' 0.8 + +# ALSA key binding (media keys do not even have keycode...) +bindsym XF86AudioRaiseVolume exec --no-startup-id amixer -D hw:PCH -M sset Master 5%+ +bindsym XF86AudioLowerVolume exec --no-startup-id amixer -D hw:PCH -M sset Master 5%- +bindsym XF86AudioMute exec --no-startup-id amixer -D hw:PCH -M sset 'Master' toggle +bindsym XF86AudioPlay exec --no-startup-id playerctl play-pause +bindsym XF86AudioPrev exec --no-startup-ip playerctl prev +bindsym XF86AudioNext exec --no-startup-id playerctl next + +# Luminosity on laptop (not xorg-xbacklight but the compatible and working acpilight) +bindsym XF86MonBrightnessDown exec --no-startup-id xbacklight -dec 10 -steps 200 +bindsym XF86MonBrightnessUp exec --no-startup-id xbacklight -inc 10 -steps 200 +bindsym XF86KbdBrightnessDown exec --no-startup-id xbacklight -ctrl asus::kbd_backlight -dec 30 +bindsym XF86KbdBrightnessUp exec --no-startup-id xbacklight -ctrl asus::kbd_backlight -inc 30 + +#Open explorer without last tabs +bindsym Mod4+e exec spacefm -n +#Open explorer with last tabs (sym to Ctrl+T, Ctrl+Maj+T) +bindsym Mod4+Shift+e exec spacefm + +#Gamma, color temp and brightness night adjuster +exec --no-startup-id redshift-gtk + +# Set ALSA initial volume +exec-always --no-startup-id amixer -D hw:PCH -M sset Master 50% + +for_window [class="^Thunderbird*"] move container to workspace 3 + +# Cadence will take care of all we need : +# - Config tells Cadence to start LADISH, export MIDI hw and start A2J ; +# - LADISH implies JACK starts, then it will starts needed apps (e.g. Non-Mixer) +exec --no-startup-id cadence-session-start --start + +# Automate port mapping for applications +exec --no-startup-id jack-matchmaker -p ~/.config/jack-matchmaker/patterns + +# Set DPI along with .Xresources +exec xrandr --dpi 160 + +exec thunderbird diff --git a/.config/polybar/config.laptop b/.config/polybar/config.laptop new file mode 100644 index 0000000..691b263 --- /dev/null +++ b/.config/polybar/config.laptop @@ -0,0 +1,331 @@ +;===================================================== +; +; To learn more about how to configure Polybar +; go to https://github.com/jaagr/polybar +; +; The README contains alot of information +; +;===================================================== + +[colors] +background = #bb2f343f +foreground = #eee +foreground-alt = #555 +secondary = #e60053 +alert = #bd2c40 +accent = #fba922 + +[global/wm] +margin-top=50 + +; Common to top and bottom bars +[bar/common] +dpi = 150 +width = 100% +enable-ipc = true +height = 54 +foreground = ${colors.foreground} +background = ${colors.background} +line-size = 3 +line-color = #f00 + +locale = en_US.UTF-8 +monitor = ${env:MONITOR:HDMI-0} + +[bar/chostytopbar] +inherit = bar/common +font-0 = NotoSans-Regular:size=10;2 +font-1 = MaterialIcons-Regular:size=11;4 +font-2 = Symbola:size=11;2 +font-3 = Weather Icons:size=10;3 + +overline-size = 10 +underline-size = 10 +overline-color = ${self.background} +underline-color = ${self.background} +border-bottom-size = 1 +border-bottom-color = #333 +padding-left = 2 +padding-right = 10 +module-margin-left = 4 +module-margin-right = 4 + +modules-left = powermenu system-uptime-pretty battery +modules-center = xwindow +modules-right = system-usb-udev pulseaudio date + +tray-position = right + +[bar/chostybottombar] +inherit = bar/common +bottom = true + +overline-size = 3 +overline-color = ${colors.accent} +underline-size = 3 +underline-color = ${colors.accent} + +spacing = 3 +padding-left = 0 +padding-right = 5 +module-margin-left = 6 +module-margin-right = 6 + +font-0 = Roboto:size=10;2 +font-1 = Symbola:size=4;1 +font-2 = Symbola:size=5;1 +font-3 = MaterialIcons-Regular:size=11;4 +font-4 = Font Awesome 5 Free:style=solid:size=10;2 + +modules-left = i3 +;modules-center = +modules-right = wireless-network wired-network updates-arch-combined temperature cpu memory filesystem-custom + +[module/pulseaudio] +type = internal/pulseaudio +interval = 5 + +format-volume = +label-muted = 🔇 muted +label-muted-foreground = #666 + +ramp-volume-0 = 🔈 +ramp-volume-1 = 🔉 +ramp-volume-2 = 🔊 + +ramp-headphones-0 =  +ramp-headphones-1 =  + +[module/battery] +type = internal/battery +full-at = 100 +battery = BAT0 +adapter = AC0 +poll-interval = 5 +format-charging = +format-discharging = +format-full = +label-charging =  %percentage%% +label-discharging =  %percentage%% +label-full = %{F#77dd77} + +[module/xwindow] +type = internal/xwindow +label = %{F#ddd}%title% +label-maxlen=100 + +[module/wireless-network] +type = internal/network +interface = wlp2s0 +interval = 1 +label-connected = %{F#ddd}%essid%  %local_ip% %{F#77dd77}%{F-}%downspeed% %{F#dd7777}%{F-}%upspeed% +label-disconnected = Ethernet disconnected +label-disconnected-foreground = #66 + +[module/i3] +type = internal/i3 +format = + +index-sort = true + +ws-icon-0 = 2; +ws-icon-1 = 1; +ws-icon-2 = 3; +ws-icon-3 = 4;rm +ws-icon-4 = irssi; +ws-icon-default =  + +label-dimmed-underline = ${root.background} + +label-focused = %icon% %name% +label-focused-foreground = #f3f3f3 +;label-focused-underline = #${colors.accent} +label-focused-underline = #9f78e1 +label-focused-font = 0 +label-focused-padding = 4 + +label-unfocused = %icon% %name% +label-unfocused-underline = #555555 +label-unfocused-font = 0 +label-unfocused-padding = 4 + +label-urgent = %icon% %name% +label-urgent-foreground = #000000 +label-urgent-background = #bd2c40 +label-urgent-underline = #9b0a20 +label-urgent-font = 0 +label-urgent-padding = 4 + +label-visible = %icon% %name% +label-visible-foreground = #55ffffff +label-visible-font = 0 +label-visible-padding = 4 + +[module/xkeyboard] +type = internal/xkeyboard +blacklist-0 = num lock + +format-prefix = " " +format-prefix-foreground = ${colors.foreground-alt} +format-prefix-underline = ${colors.secondary} + +label-layout = %layout% +label-layout-underline = ${colors.secondary} + +label-indicator-padding = 2 +label-indicator-margin = 1 +label-indicator-background = ${colors.secondary} +label-indicator-underline = ${colors.secondary} + +[module/filesystem] +type = internal/fs +interval = 25 + +mount-0 = / +mount-1 = /mnt/data +mount-2 = /mnt/backup + +label-mounted = %{F#0a81f5}%mountpoint%%{F-} · %percentage_used%% ·%{F#555} %free% free +label-unmounted = %mountpoint% not mounted +label-unmounted-foreground = ${colors.foreground-alt} + +spacing = 4 + +[module/cpu] +type = internal/cpu +interval = 0.5 + +format =