dotfiles

my shiny new dotfiles
git clone git://git.jakekoroman.com/dotfiles
Log | Files | Refs | README

commit 11a2ce1c8b127d6d615b44a9f572f169f3993f7d
parent 497e80f231df764157f0a0fadfbb89faae30a6f9
Author: Jake Koroman <jakekoroman@proton.me>
Date:   Wed, 18 Sep 2024 16:14:09 -0400

going to river/waybar.

Diffstat:
M.config/fish/config.fish | 1+
M.config/fish/fish_variables | 45++++++++++++++++++++++++++++-----------------
A.config/fish/functions/fish_prompt.fish | 31+++++++++++++++++++++++++++++++
A.config/river/init | 176+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
A.config/waybar/config.jsonc | 2++
A.config/waybar/style.css | 87+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
M.gitignore | 2++
M.zprofile | 4++--
MREADME | 14+++++++++-----
Mdeploy | 15++++++++++++---
Adevice-specific/framework/emacs.el | 9+++++++++
Adevice-specific/framework/river | 11+++++++++++
Adevice-specific/framework/waybar | 31+++++++++++++++++++++++++++++++
Ddevice-specific/laptop/emacs.el | 9---------
Ddevice-specific/laptop/i3status | 65-----------------------------------------------------------------
Rdevice-specific/laptop/dwl-hardware.h -> device-specific/thinkpad/dwl-hardware.h | 0
Adevice-specific/thinkpad/emacs.el | 9+++++++++
Rdevice-specific/laptop/hardware -> device-specific/thinkpad/hardware | 0
Adevice-specific/thinkpad/i3status | 66++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Mscripts/bookmarks | 2+-
Ascripts/checkmail | 8++++++++
Ascripts/davmail_launch | 3+++
Mscripts/rdpmenu | 2+-
Ashared-configs/sakura/template.conf | 75+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
24 files changed, 564 insertions(+), 103 deletions(-)

diff --git a/.config/fish/config.fish b/.config/fish/config.fish @@ -1,4 +1,5 @@ if status is-interactive # Commands to run in interactive sessions can go here fish_vi_key_bindings + set -g fish_greeting end diff --git a/.config/fish/fish_variables b/.config/fish/fish_variables @@ -1,31 +1,42 @@ # This file contains fish universal variable definitions. # VERSION: 3.0 SETUVAR __fish_initialized:3400 -SETUVAR fish_color_autosuggestion:brblack -SETUVAR fish_color_cancel:\x2dr -SETUVAR fish_color_command:blue -SETUVAR fish_color_comment:red +SETUVAR fish_color_autosuggestion:586e75 +SETUVAR fish_color_cancel:\x2d\x2dreverse +SETUVAR fish_color_command:93a1a1 +SETUVAR fish_color_comment:586e75 SETUVAR fish_color_cwd:green SETUVAR fish_color_cwd_root:red -SETUVAR fish_color_end:green -SETUVAR fish_color_error:brred -SETUVAR fish_color_escape:brcyan +SETUVAR fish_color_end:268bd2 +SETUVAR fish_color_error:dc322f +SETUVAR fish_color_escape:00a6b2 SETUVAR fish_color_history_current:\x2d\x2dbold SETUVAR fish_color_host:normal -SETUVAR fish_color_host_remote:yellow +SETUVAR fish_color_host_remote:\x1d +SETUVAR fish_color_keyword:\x1d +SETUVAR fish_color_match:\x2d\x2dbackground\x3dbrblue SETUVAR fish_color_normal:normal -SETUVAR fish_color_operator:brcyan -SETUVAR fish_color_param:cyan -SETUVAR fish_color_quote:yellow -SETUVAR fish_color_redirection:cyan\x1e\x2d\x2dbold -SETUVAR fish_color_search_match:bryellow\x1e\x2d\x2dbackground\x3dbrblack +SETUVAR fish_color_operator:00a6b2 +SETUVAR fish_color_option:\x1d +SETUVAR fish_color_param:839496 +SETUVAR fish_color_quote:657b83 +SETUVAR fish_color_redirection:6c71c4 +SETUVAR fish_color_search_match:bryellow\x1e\x2d\x2dbackground\x3dblack SETUVAR fish_color_selection:white\x1e\x2d\x2dbold\x1e\x2d\x2dbackground\x3dbrblack SETUVAR fish_color_status:red SETUVAR fish_color_user:brgreen SETUVAR fish_color_valid_path:\x2d\x2dunderline SETUVAR fish_key_bindings:fish_vi_key_bindings -SETUVAR fish_pager_color_completion:normal -SETUVAR fish_pager_color_description:yellow\x1e\x2di -SETUVAR fish_pager_color_prefix:normal\x1e\x2d\x2dbold\x1e\x2d\x2dunderline +SETUVAR fish_pager_color_background:\x1d +SETUVAR fish_pager_color_completion:B3A06D +SETUVAR fish_pager_color_description:B3A06D +SETUVAR fish_pager_color_prefix:cyan\x1e\x2d\x2dunderline SETUVAR fish_pager_color_progress:brwhite\x1e\x2d\x2dbackground\x3dcyan -SETUVAR fish_pager_color_selected_background:\x2dr +SETUVAR fish_pager_color_secondary_background:\x1d +SETUVAR fish_pager_color_secondary_completion:\x1d +SETUVAR fish_pager_color_secondary_description:\x1d +SETUVAR fish_pager_color_secondary_prefix:\x1d +SETUVAR fish_pager_color_selected_background:\x2d\x2dbackground\x3dbrblack +SETUVAR fish_pager_color_selected_completion:\x1d +SETUVAR fish_pager_color_selected_description:\x1d +SETUVAR fish_pager_color_selected_prefix:\x1d diff --git a/.config/fish/functions/fish_prompt.fish b/.config/fish/functions/fish_prompt.fish @@ -0,0 +1,31 @@ +function fish_prompt --description 'Write out the prompt' + set -l last_pipestatus $pipestatus + set -lx __fish_last_status $status # Export for __fish_print_pipestatus. + set -l normal (set_color normal) + set -q fish_color_status + or set -g fish_color_status red + + # Color the prompt differently when we're root + set -l color_cwd $fish_color_cwd + set -l suffix '>' + if functions -q fish_is_root_user; and fish_is_root_user + if set -q fish_color_cwd_root + set color_cwd $fish_color_cwd_root + end + set suffix '#' + end + + # Write pipestatus + # If the status was carried over (if no command is issued or if `set` leaves the status untouched), don't bold it. + set -l bold_flag --bold + set -q __fish_prompt_status_generation; or set -g __fish_prompt_status_generation $status_generation + if test $__fish_prompt_status_generation = $status_generation + set bold_flag + end + set __fish_prompt_status_generation $status_generation + set -l status_color (set_color $fish_color_status) + set -l statusb_color (set_color $bold_flag $fish_color_status) + set -l prompt_status (__fish_print_pipestatus "[" "]" "|" "$status_color" "$statusb_color" $last_pipestatus) + + echo -n -s (prompt_login)' ' (set_color $color_cwd) (prompt_pwd) $normal (fish_vcs_prompt) $normal " "$prompt_status $suffix " " +end diff --git a/.config/river/init b/.config/river/init @@ -0,0 +1,176 @@ +#!/bin/sh + +# This is the example configuration file for river. +# +# If you wish to edit this, you will probably want to copy it to +# $XDG_CONFIG_HOME/river/init or $HOME/.config/river/init first. +# +# See the river(1), riverctl(1), and rivertile(1) man pages for complete +# documentation. + +# Note: the "Super" modifier is also known as Logo, GUI, Windows, Mod4, etc. + +riverctl map normal Super Return spawn $TERMINAL +riverctl map normal Super P spawn fuzzel +riverctl map normal Super E spawn 'emacsclient -c -a "emacs"' +riverctl map normal Super Delete spawn myswaylock +riverctl map normal Super+Shift C close +riverctl map normal Super+Control Q exit +riverctl map normal Super R spawn rdpmenu +riverctl map normal Super Slash spawn bookmarks +riverctl map normal Super S spawn 'wayshot -s "$(slurp)" --stdout | wl-copy' +riverctl map normal Super+Shift S spawn 'wayshot -s "$(slurp)" --stdout | swappy -f -' + +# Super+J and Super+K to focus the next/previous view in the layout stack +riverctl map normal Super J focus-view next +riverctl map normal Super K focus-view previous + +# Super+Shift+J and Super+Shift+K to swap the focused view with the next/previous +# view in the layout stack +riverctl map normal Super+Shift J swap next +riverctl map normal Super+Shift K swap previous + +# Super+Period and Super+Comma to focus the next/previous output +riverctl map normal Super Period focus-output next +riverctl map normal Super Comma focus-output previous + +# Super+Shift+{Period,Comma} to send the focused view to the next/previous output +riverctl map normal Super+Shift Period send-to-output next +riverctl map normal Super+Shift Comma send-to-output previous + +# Super+Shift+Return to bump the focused view to the top of the layout stack +riverctl map normal Super+Shift Return zoom + +# Super+H and Super+L to decrease/increase the main ratio of rivertile(1) +riverctl map normal Super H send-layout-cmd rivertile "main-ratio -0.05" +riverctl map normal Super L send-layout-cmd rivertile "main-ratio +0.05" + +# Super+Shift+H and Super+Shift+L to increment/decrement the main count of rivertile(1) +riverctl map normal Super+Shift H send-layout-cmd rivertile "main-count +1" +riverctl map normal Super+Shift L send-layout-cmd rivertile "main-count -1" + +# Super+Alt+{H,J,K,L} to move views +riverctl map normal Super+Alt H move left 100 +riverctl map normal Super+Alt J move down 100 +riverctl map normal Super+Alt K move up 100 +riverctl map normal Super+Alt L move right 100 + +# Super+Alt+Control+{H,J,K,L} to snap views to screen edges +riverctl map normal Super+Alt+Control H snap left +riverctl map normal Super+Alt+Control J snap down +riverctl map normal Super+Alt+Control K snap up +riverctl map normal Super+Alt+Control L snap right + +# Super+Alt+Shift+{H,J,K,L} to resize views +riverctl map normal Super+Alt+Shift H resize horizontal -100 +riverctl map normal Super+Alt+Shift J resize vertical 100 +riverctl map normal Super+Alt+Shift K resize vertical -100 +riverctl map normal Super+Alt+Shift L resize horizontal 100 + +# Super + Left Mouse Button to move views +riverctl map-pointer normal Super BTN_LEFT move-view + +# Super + Right Mouse Button to resize views +riverctl map-pointer normal Super BTN_RIGHT resize-view + +# Super + Middle Mouse Button to toggle float +riverctl map-pointer normal Super BTN_MIDDLE toggle-float + +for i in $(seq 1 9) +do + tags=$((1 << ($i - 1))) + + # Super+[1-9] to focus tag [0-8] + riverctl map normal Super $i set-focused-tags $tags + + # Super+Shift+[1-9] to tag focused view with tag [0-8] + riverctl map normal Super+Shift $i set-view-tags $tags + + # Super+Control+[1-9] to toggle focus of tag [0-8] + riverctl map normal Super+Control $i toggle-focused-tags $tags + + # Super+Shift+Control+[1-9] to toggle tag [0-8] of focused view + riverctl map normal Super+Shift+Control $i toggle-view-tags $tags +done + +# Super+0 to focus all tags +# Super+Shift+0 to tag focused view with all tags +all_tags=$(((1 << 32) - 1)) +riverctl map normal Super 0 set-focused-tags $all_tags +riverctl map normal Super+Shift 0 set-view-tags $all_tags + +# Super+Space to toggle float +riverctl map normal Super Space toggle-float + +# Super+F to toggle fullscreen +riverctl map normal Super F toggle-fullscreen + +# Super+{Up,Right,Down,Left} to change layout orientation +riverctl map normal Super Up send-layout-cmd rivertile "main-location top" +riverctl map normal Super Right send-layout-cmd rivertile "main-location right" +riverctl map normal Super Down send-layout-cmd rivertile "main-location bottom" +riverctl map normal Super Left send-layout-cmd rivertile "main-location left" + +# Declare a passthrough mode. This mode has only a single mapping to return to +# normal mode. This makes it useful for testing a nested wayland compositor +riverctl declare-mode passthrough + +# Super+F11 to enter passthrough mode +riverctl map normal Super F11 enter-mode passthrough + +# Super+F11 to return to normal mode +riverctl map passthrough Super F11 enter-mode normal + +# Various media key mapping examples for both normal and locked mode which do +# not have a modifier +for mode in normal locked +do + # Eject the optical drive (well if you still have one that is) + riverctl map $mode None XF86Eject spawn 'eject -T' + + # Control pulse audio volume with pamixer (https://github.com/cdemoulins/pamixer) + riverctl map $mode None XF86AudioRaiseVolume spawn 'pamixer -i 5' + riverctl map $mode None XF86AudioLowerVolume spawn 'pamixer -d 5' + riverctl map $mode None XF86AudioMute spawn 'pamixer --toggle-mute' + + # Control MPRIS aware media players with playerctl (https://github.com/altdesktop/playerctl) + riverctl map $mode None XF86AudioMedia spawn 'playerctl play-pause' + riverctl map $mode None XF86AudioPlay spawn 'playerctl play-pause' + riverctl map $mode None XF86AudioPrev spawn 'playerctl previous' + riverctl map $mode None XF86AudioNext spawn 'playerctl next' + + # Control screen backlight brightness with brightnessctl (https://github.com/Hummer12007/brightnessctl) + riverctl map $mode None XF86MonBrightnessUp spawn 'brightnessctl set +10%' + riverctl map $mode None XF86MonBrightnessDown spawn 'brightnessctl set 10%-' +done + +# Set background and border color +riverctl background-color 0x002b36 +riverctl border-color-focused 0x93a1a1 +riverctl border-color-unfocused 0x586e75 + +# Set keyboard repeat rate +riverctl set-repeat 50 300 + +# Make all views with an app-id that starts with "float" and title "foo" start floating. +riverctl rule-add -app-id 'float*' -title 'foo' float + +# Make all views with app-id "bar" and any title use client-side decorations +riverctl rule-add -app-id "bar" csd + +riverctl rule-add -app-id emacs ssd +riverctl rule-add -app-id LibreWolf ssd +riverctl rule-add -app-id firefox-esr ssd +riverctl rule-add -app-id steam ssd +riverctl rule-add -app-id sakura ssd +riverctl rule-add -app-id pavucontrol ssd + +riverctl focus-follows-cursor normal + +# Set the default layout generator to be rivertile and start it. +# River will send the process group of the init executable SIGTERM on exit. +riverctl default-layout rivertile +rivertile -main-ratio 0.55 -view-padding 6 -outer-padding 6 & + +# source device specific options +. ~/.config/river/device diff --git a/.config/waybar/config.jsonc b/.config/waybar/config.jsonc @@ -0,0 +1 @@ +/home/jake/dotfiles/device-specific/framework/waybar +\ No newline at end of file diff --git a/.config/waybar/style.css b/.config/waybar/style.css @@ -0,0 +1,87 @@ +* { + border: none; + border-radius: 0; + font-family: Iosevka Nerd Font, Roboto, Helvetica, Arial, sans-serif; + font-size: 13px; + min-height: 0; +} + +window#waybar { + background: rgba(43, 48, 59, 0.5); + border-bottom: 3px solid rgba(100, 114, 125, 0.5); + color: white; +} + +tooltip { + background: rgba(43, 48, 59, 0.5); + border: 1px solid rgba(100, 114, 125, 0.5); +} + +tooltip label { + color: white; +} + +#tags button { + padding: 0 5px; + background: transparent; + color: white; + border-bottom: 3px solid transparent; +} + +#tags button.occupied { + border-bottom: 3px solid green; +} + +#tags button.focused { + background: #64727D; + border-bottom: 3px solid white; +} + +#mode, #clock, #battery, #pulseaudio, #custom-mail { + padding: 0 10px; +} + +#mode { + background: #64727D; + border-bottom: 3px solid white; +} + +#clock { + background-color: #64727D; +} + +#battery { + background-color: #ffffff; + color: black; +} + +#battery.charging { + color: white; + background-color: #26A65B; +} + +#pulseaudio { + background-color: #64727D; +} + +#custom-mail { + background-color: #ffffff; + color: black; +} + +@keyframes blink { + to { + background-color: #ffffff; + color: black; + } +} + +#battery.warning:not(.charging) { + background: #f53c3c; + color: white; + animation-name: blink; + animation-duration: 0.5s; + animation-timing-function: steps(12); + animation-iteration-count: infinite; + animation-direction: alternate; +} diff --git a/.gitignore b/.gitignore @@ -1,6 +1,7 @@ .config/sway/hardware-specific-config .config/i3status/config .config/foot/foot.ini +.config/sakura/sakura.conf .config/zsh/.zcompdump .config/emacs/eln-cache .config/emacs/local/device.el @@ -10,6 +11,7 @@ .config/emacs/eshell .config/emacs/auto-save-list/ .config/emacs/custom.el +.config/river/device dwl/*.o dwl/dwl dwlb/*.o diff --git a/.zprofile b/.zprofile @@ -24,11 +24,11 @@ export MANPATH=$MANPATH:$XDG_DATA_HOME/man export EDITOR=nvim export BROWSER=librewolf -export TERMINAL=foot +export TERMINAL=sakura export PATH=$CARGO_HOME/bin:$HOME/.local/bin:$HOME/scripts:$PATH export XDG_CURRENT_DESKTOP=wlroots # [ $(tty) = "/dev/tty1" ] && [ -z $DISPLAY ] && startx -[ $(tty) = "/dev/tty1" ] && [ -z $DISPLAY ] && dbus-run-session river +[ $(tty) = "/dev/tty1" ] && [ -z $DISPLAY ] && river diff --git a/README b/README @@ -24,11 +24,14 @@ note that dwlb also includes 'device.h' in order to share font settings between and the bar. i feel that will be useful if i ever need to spawn other programs with the same font. but mainly i didn't want to symlink the same file twice ... it seemed "messier". +the river config is very similiar to sway as it justs symlinks a file based on the deployed device +and sources it in the main river init script. i want to explore writing the river config in something +more interesting than a shell script. + symlinks are also utilized for the i3status, and emacs configs. -the foot config is a bit more interesting as i dont want to maintain different configs for -different hardware. there is a master foot.ini named template.ini located at ./shared-configs/foot/ -that has a marker {FOOT_FONT} that is replaced with appropiate font in the deploy script. +the foot and sakura config is a bit more interesting as i dont want to maintain different configs for +different hardware. there are master templates located in the ./shared-configs/ directory +that have markers {FOOT_FONT} and {SAKURA_FONT} that are replaced with appropiate font in the deploy script. -the trick used for foot's config can be easily replicated for other config files, i find this approach -easier than Xresources as i dont have to rely on software implementing support for reading the Xresources db. +maybe its better to just maintain seperate dotfiles for each device but this seemed like more fun :) +\ No newline at end of file diff --git a/deploy b/deploy @@ -4,19 +4,23 @@ set -e -USAGE="Usage: ./deploy [laptop|desktop]" +USAGE="Usage: ./deploy [thinkpad|framework|desktop]" if [ -z "$1" ]; then echo $USAGE exit fi -if [ $(echo "$1" | cut -c1-1) = "l" ]; then +if [ $(echo "$1" | cut -c1-1) = "t" ]; then hardware="laptop" FOOT_FONT="Iosevka Nerd Font:size=14" elif [ $(echo "$1" | cut -c1-1) = "d" ]; then hardware="desktop" FOOT_FONT="Iosevka Nerd Font:pixelsize=18" +elif [ $(echo "$1" | cut -c1-1) = "f" ]; then + hardware="framework" + FOOT_FONT="Iosevka Nerd Font:pixelsize=14" + SAKURA_FONT="Iosevka Nerd Font 12" else echo $USAGE exit @@ -34,11 +38,16 @@ symlink_file "$(pwd)/device-specific/$hardware/hardware" "$(pwd)/.config/sway/ha symlink_file "$(pwd)/device-specific/$hardware/i3status" "$(pwd)/.config/i3status/config" symlink_file "$(pwd)/device-specific/$hardware/emacs.el" "$(pwd)/.config/emacs/local/device.el" symlink_file "$(pwd)/device-specific/$hardware/dwl-hardware.h" "$(pwd)/dwl/device.h" +symlink_file "$(pwd)/device-specific/$hardware/river" "$(pwd)/.config/river/device" +symlink_file "$(pwd)/device-specific/$hardware/waybar" "$(pwd)/.config/waybar/config.jsonc" mkdir -p "$(pwd)/.config/foot" sed "s/{FOOT_FONT}/$FOOT_FONT/g" "$(pwd)/shared-configs/foot/template.ini" > "$(pwd)/.config/foot/foot.ini" +mkdir -p "$(pwd)/.config/sakura" +sed "s/{SAKURA_FONT}/$SAKURA_FONT/g" "$(pwd)/shared-configs/sakura/template.conf" > "$(pwd)/.config/sakura/sakura.conf" + stow -D . 2> /dev/null stow . -echo "Successfully deployed $hardware's configuration" +echo "Successfully deployed "$hardware"'s configuration" diff --git a/device-specific/framework/emacs.el b/device-specific/framework/emacs.el @@ -0,0 +1,9 @@ +(setq my-font-name "Iosevka Nerd Font:pixelsize=") +(setq my-font-size 16) +(setq my-font-big-size 30) +(setq my-font (concat my-font-name (number-to-string my-font-size))) + +(set-default 'truncate-lines t) +(load-theme 'solarized t) +(solarized-toggle-background-mode) +(transparency 90) diff --git a/device-specific/framework/river b/device-specific/framework/river @@ -0,0 +1,11 @@ +# symlinked to ~/.config/river/device included at the bottom of rivers init script + +riverctl input pointer-2362-628-PIXA3854:00_093A:0274_Touchpad natural-scroll enabled +riverctl keyboard-layout -options "caps:escape" us + +emacs --bg-daemon & +gentoo-pipewire-launcher restart & +kanshi & +myswayidle & +waybar & +wbg ~/Pictures/wallpaper & diff --git a/device-specific/framework/waybar b/device-specific/framework/waybar @@ -0,0 +1,31 @@ +{ + "layer": "top", + "modules-left": ["river/tags", "river/mode"], + "modules-center": ["river/window"], + "modules-right": ["custom/mail", "pulseaudio", "battery", "clock", "tray"], + "custom/mail": { + "exec": "checkmail 'koromanj@miltonhydro.com'" + }, + "river/window": { + "max-length": 50 + }, + "tray": { + "icon-size": 20, + "padding": 10 + }, + "pulseaudio": { + "format": "{volume}% {icon}", + "format-muted": "{volume}% 󰝟", + "format-icons": { + "default": ["󰖀", "󰕾"] + }, + "on-click": "pavucontrol" + }, + "battery": { + "format": "{capacity}% {icon}", + "format-icons": ["", "", "", "", ""] + }, + "clock": { + "format-alt": "{:%a, %d. %b %H:%M}" + } +} diff --git a/device-specific/laptop/emacs.el b/device-specific/laptop/emacs.el @@ -1,9 +0,0 @@ -(setq my-font-name "Iosevka Nerd Font:pixelsize=") -(setq my-font-size 18) -(setq my-font-big-size 30) -(setq my-font (concat my-font-name (number-to-string my-font-size))) - -(set-default 'truncate-lines t) -(load-theme 'solarized t) -(solarized-toggle-background-mode) -(transparency 100) diff --git a/device-specific/laptop/i3status b/device-specific/laptop/i3status @@ -1,65 +0,0 @@ -# i3status configuration file. -# see "man i3status" for documentation. - -# It is important that this file is edited as UTF-8. -# The following line should contain a sharp s: -# ß -# If the above line is not correctly displayed, fix your editor first! - -general { - colors = true - interval = 5 -} - -order += "wireless _first_" -order += "ethernet _first_" -order += "disk /home" -order += "load" -order += "memory" -order += "volume master" -order += "battery all" -order += "tztime local" - -wireless _first_ { - # format_up = "W: (%quality at %essid) %ip" - format_up = "W: (Signal%quality) %ip" - format_down = "W: down" -} - -ethernet _first_ { - format_up = "E: %ip (%speed)" - format_down = "E: down" -} - -battery all { - format = "%status %percentage %remaining" -} - -disk "/" { - format = "%avail" -} - -disk "/home" { - format = "%avail" -} - -load { - format = "%1min" -} - -memory { - format = "%used | %total" - threshold_degraded = "1G" - format_degraded = "MEMORY < %available" -} - -tztime local { - format = "%A %Y-%m-%d %H:%M:%S" - locale = "fr_CA.utf8" -} - -volume master { - format = "Volume: %volume" - format_muted = "Volume: muted (%volume)" - # device = "pulse:0" -} diff --git a/device-specific/laptop/dwl-hardware.h b/device-specific/thinkpad/dwl-hardware.h diff --git a/device-specific/thinkpad/emacs.el b/device-specific/thinkpad/emacs.el @@ -0,0 +1,9 @@ +(setq my-font-name "Iosevka Nerd Font:pixelsize=") +(setq my-font-size 16) +(setq my-font-big-size 30) +(setq my-font (concat my-font-name (number-to-string my-font-size))) + +(set-default 'truncate-lines t) +(load-theme 'solarized t) +(solarized-toggle-background-mode) +(transparency 90) diff --git a/device-specific/laptop/hardware b/device-specific/thinkpad/hardware diff --git a/device-specific/thinkpad/i3status b/device-specific/thinkpad/i3status @@ -0,0 +1,66 @@ +# i3status configuration file. +# see "man i3status" for documentation. + +# It is important that this file is edited as UTF-8. +# The following line should contain a sharp s: +# ß +# If the above line is not correctly displayed, fix your editor first! + +general { + colors = true + interval = 5 + markup = "pango" +} + +order += "wireless _first_" +order += "ethernet _first_" +order += "disk /" +order += "load" +order += "memory" +order += "volume master" +order += "battery all" +order += "tztime local" + +wireless _first_ { + # format_up = "W: (%quality at %essid) %ip" + format_up = "W: (Signal%quality) %ip" + format_down = "W: down" +} + +ethernet _first_ { + format_up = "E: %ip (%speed)" + format_down = "E: down" +} + +battery all { + format = "%status %percentage %remaining" +} + +disk "/" { + format = "%avail" +} + +disk "/home" { + format = "%avail" +} + +load { + format = "%1min" +} + +memory { + format = "%used | %total" + threshold_degraded = "1G" + format_degraded = "MEMORY < %available" +} + +tztime local { + format = "%A %Y-%m-%d %H:%M:%S" + locale = "fr_CA.utf8" +} + +volume master { + format = "Volume: %volume" + format_muted = "Volume: muted (%volume)" + # device = "pulse:0" +} diff --git a/scripts/bookmarks b/scripts/bookmarks @@ -2,6 +2,6 @@ readarray -t bookmarks < $MENULAUNCHER_DIR/bookmarks -url=$(printf '%s\n' "${bookmarks[@]}" | rofi -dmenu -p "Bookmark" -i | sed 's/^.*: //g') +url=$(printf '%s\n' "${bookmarks[@]}" | fuzzel --dmenu -p "Bookmark: " -i | sed 's/^.*: //g') [[ ! -z "$url" ]] && firefox --new-tab $url diff --git a/scripts/checkmail b/scripts/checkmail @@ -0,0 +1,8 @@ +#!/bin/sh + +[ $# -lt 1 ] && echo "error: invalid usage: requires an email as an argument" && exit 1 + +mail_address="$1" +mail_dir="$XDG_DATA_HOME/mail/$mail_address/INBOX/new" + +echo "$(ls $mail_dir | wc -l) " diff --git a/scripts/davmail_launch b/scripts/davmail_launch @@ -0,0 +1,3 @@ +#!/bin/sh + +exec ~/opt/davmail/davmail $XDG_CONFIG_HOME/davmail/davmail.properties diff --git a/scripts/rdpmenu b/scripts/rdpmenu @@ -1,5 +1,5 @@ #!/bin/sh -server=$(echo "$(ls $XDG_DATA_HOME/rdp)" | rofi -dmenu -p "Server" -i) +server=$(echo "$(ls $XDG_DATA_HOME/rdp)" | fuzzel --dmenu -p "Server" -i) [[ ! -z "$server" ]] && rdp "$server" diff --git a/shared-configs/sakura/template.conf b/shared-configs/sakura/template.conf @@ -0,0 +1,75 @@ +[sakura] +colorset1_fore=rgb(131,148,150) +colorset1_back=rgba(0,43,54,0.9) +colorset1_curs=rgb(255,255,255) +colorset1_scheme=0 +colorset1_key=F1 +colorset2_fore=rgb(255,255,255) +colorset2_back=rgb(0,0,0) +colorset2_curs=rgb(255,255,255) +colorset2_scheme=1 +colorset2_key=F2 +colorset3_fore=rgb(192,192,192) +colorset3_back=rgb(0,0,0) +colorset3_curs=rgb(255,255,255) +colorset3_scheme=1 +colorset3_key=F3 +colorset4_fore=rgb(192,192,192) +colorset4_back=rgb(0,0,0) +colorset4_curs=rgb(255,255,255) +colorset4_scheme=1 +colorset4_key=F4 +colorset5_fore=rgb(192,192,192) +colorset5_back=rgb(0,0,0) +colorset5_curs=rgb(255,255,255) +colorset5_scheme=1 +colorset5_key=F5 +colorset6_fore=rgb(192,192,192) +colorset6_back=rgb(0,0,0) +colorset6_curs=rgb(255,255,255) +colorset6_scheme=1 +colorset6_key=F6 +last_colorset=1 +bold_is_bright=false +scroll_lines=4096 +font={SAKURA_FONT} +show_always_first_tab=No +scrollbar=false +closebutton=true +tabs_on_bottom=false +less_questions=true +disable_numbered_tabswitch=false +use_fading=false +scrollable_tabs=true +urgent_bell=No +audible_bell=No +blinking_cursor=No +cursor_type=VTE_CURSOR_SHAPE_BLOCK +word_chars=-,./?%&#_~: +palette=0 +add_tab_accelerator=5 +del_tab_accelerator=5 +switch_tab_accelerator=8 +move_tab_accelerator=9 +copy_accelerator=5 +scrollbar_accelerator=5 +open_url_accelerator=5 +font_size_accelerator=4 +set_tab_name_accelerator=5 +search_accelerator=5 +add_tab_key=T +del_tab_key=W +prev_tab_key=Left +next_tab_key=Right +copy_key=C +paste_key=V +scrollbar_key=S +set_tab_name_key=N +search_key=F +increase_font_size_key=plus +decrease_font_size_key=minus +fullscreen_key=F11 +set_colorset_accelerator=5 +icon_file=terminal-tango.svg +paste_button=2 +menu_button=3