From: Frederik Vanrenterghem Date: Tue, 23 Apr 2024 13:41:34 +0000 (+0800) Subject: Auto refresh emails and change theming options. X-Git-Url: http://git.vanrenterghem.biz/Dotty.git/commitdiff_plain/HEAD?hp=880428f728e4e1e5a2954be5739f605c68b80564 Auto refresh emails and change theming options. * Load new emails every 10 minutes when mu4e is active. * Use variable width font in org-mode. --- diff --git a/autorandr/.config/autorandr/default b/autorandr/.config/autorandr/default new file mode 120000 index 0000000..317801a --- /dev/null +++ b/autorandr/.config/autorandr/default @@ -0,0 +1 @@ +mobile \ No newline at end of file diff --git a/autorandr/.config/autorandr/docked-laptop-lid-closed/config b/autorandr/.config/autorandr/docked-laptop-lid-closed/config new file mode 100644 index 0000000..fb5a186 --- /dev/null +++ b/autorandr/.config/autorandr/docked-laptop-lid-closed/config @@ -0,0 +1,19 @@ +output eDP-1 +off +output DP-1 +off +output DP-2 +off +output DP-2-1 +off +output DP-2-3 +off +output DP-2-2 +crtc 1 +mode 2560x1440 +pos 0x0 +rate 59.95 +x-prop-audio auto +x-prop-broadcast_rgb Automatic +x-prop-max_bpc 12 +x-prop-non_desktop 0 diff --git a/autorandr/.config/autorandr/docked-laptop-lid-closed/setup b/autorandr/.config/autorandr/docked-laptop-lid-closed/setup new file mode 100644 index 0000000..40c5b26 --- /dev/null +++ b/autorandr/.config/autorandr/docked-laptop-lid-closed/setup @@ -0,0 +1 @@ +DP-2-2 00ffffffffffff004c2d17104256423032300103803f24782ac8b5ad50449e250f5054bfef80714f810081c081809500a9c0b3000101ca2e90a0601a234030203600ffff0000001e000000fd00324b1e8721000a202020202020000000fc004c5532385235350a2020202020000000ff00484e4d4e3530303035340a20200112020335f04900120313041f10005f2309070783010000e30500006b030c001000b03c200020016700000000000000e20f81e3060501023a801871382d40582c450078682100001e023a80d072382d40102c458078682100001e04740030f2705a80b0588a0078682100001e565e00a0a0a029503020350078682100001a0000d7 diff --git a/autorandr/.config/autorandr/docked/config b/autorandr/.config/autorandr/docked/config new file mode 100644 index 0000000..29caf6d --- /dev/null +++ b/autorandr/.config/autorandr/docked/config @@ -0,0 +1,28 @@ +output DP-1 +off +output DP-2 +off +output DP-2-1 +off +output DP-2-3 +off +output eDP-1 +crtc 0 +mode 2048x1152 +pos 0x0 +primary +rate 59.90 +x-prop-broadcast_rgb Automatic +x-prop-colorspace Default +x-prop-max_bpc 12 +x-prop-non_desktop 0 +x-prop-scaling_mode Full aspect +output DP-2-2 +crtc 1 +mode 2560x1440 +pos 2048x0 +rate 59.95 +x-prop-audio auto +x-prop-broadcast_rgb Automatic +x-prop-max_bpc 12 +x-prop-non_desktop 0 diff --git a/autorandr/.config/autorandr/docked/setup b/autorandr/.config/autorandr/docked/setup new file mode 100644 index 0000000..5e225a2 --- /dev/null +++ b/autorandr/.config/autorandr/docked/setup @@ -0,0 +1,2 @@ +DP-2-2 00ffffffffffff004c2d17104256423032300103803f24782ac8b5ad50449e250f5054bfef80714f810081c081809500a9c0b3000101ca2e90a0601a234030203600ffff0000001e000000fd00324b1e8721000a202020202020000000fc004c5532385235350a2020202020000000ff00484e4d4e3530303035340a20200112020335f04900120313041f10005f2309070783010000e30500006b030c001000b03c200020016700000000000000e20f81e3060501023a801871382d40582c450078682100001e023a80d072382d40102c458078682100001e04740030f2705a80b0588a0078682100001e565e00a0a0a029503020350078682100001a0000d7 +eDP-1 00ffffffffffff0030e4870500000000001a0104a51f1178eae3f5a351479c261050540000000101010101010101010101010101010160d100b4f0703e803c24350035ae1000001a000000000000000000000000000000000000000000fe004c4720446973706c61790a2020000000fe004c503133395544312d5350433100bc diff --git a/autorandr/.config/autorandr/mobile/config b/autorandr/.config/autorandr/mobile/config new file mode 100644 index 0000000..7b0d1d4 --- /dev/null +++ b/autorandr/.config/autorandr/mobile/config @@ -0,0 +1,15 @@ +output DP-1 +off +output DP-2 +off +output eDP-1 +crtc 0 +mode 2048x1152 +pos 0x0 +primary +rate 59.90 +x-prop-broadcast_rgb Automatic +x-prop-colorspace Default +x-prop-max_bpc 12 +x-prop-non_desktop 0 +x-prop-scaling_mode Full aspect diff --git a/autorandr/.config/autorandr/mobile/setup b/autorandr/.config/autorandr/mobile/setup new file mode 100644 index 0000000..61dd91f --- /dev/null +++ b/autorandr/.config/autorandr/mobile/setup @@ -0,0 +1 @@ +eDP-1 00ffffffffffff0030e4870500000000001a0104a51f1178eae3f5a351479c261050540000000101010101010101010101010101010160d100b4f0703e803c24350035ae1000001a000000000000000000000000000000000000000000fe004c4720446973706c61790a2020000000fe004c503133395544312d5350433100bc diff --git a/autorandr/.config/autorandr/postswitch b/autorandr/.config/autorandr/postswitch new file mode 100755 index 0000000..56b5016 --- /dev/null +++ b/autorandr/.config/autorandr/postswitch @@ -0,0 +1,3 @@ +#!/bin/sh +# reload feh bg script to fix up what's probably wrong after monitor switches +exec ~/.fehbg diff --git a/bash/.bashrc b/bash/.bashrc index 0aa3228..141a601 100644 --- a/bash/.bashrc +++ b/bash/.bashrc @@ -6,7 +6,28 @@ [[ $- != *i* ]] && return alias ls='ls --color=auto' -PS1='[\u@\h \W]\$ ' + +git_branch() { + git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/(\1)/' +} + +PS1="[\u@\h \W]\[\033[00;32m\]\$(git_branch)\[\033[00m\]\$ " + +unset SSH_AGENT_PID +if [ "${gnupg_SSH_AUTH_SOCK_by:-0}" -ne $$ ]; then + export SSH_AUTH_SOCK="$(gpgconf --list-dirs agent-ssh-socket)" +fi export GPG_TTY=$(tty) gpg-connect-agent updatestartuptty /bye >/dev/null + +[ -n "$DISPLAY" ] && export BROWSER=firefox || export BROWSER=w3m + +source /etc/profile.d/nix-daemon.sh +export LOCALE_ARCHIVE=/usr/lib/locale/locale-archive + +# Initialise pyenv +export PYENV_ROOT="$HOME/.pyenv" +[[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH" +eval "$(pyenv init -)" + diff --git a/emacs/.emacs b/emacs/.emacs deleted file mode 100644 index fc8ff51..0000000 --- a/emacs/.emacs +++ /dev/null @@ -1,74 +0,0 @@ -;; Added by Package.el. This must come before configurations of -;; installed packages. Don't delete this line. If you don't want it, -;; just comment it out by adding a semicolon to the start of the line. -;; You may delete these explanatory comments. -(package-initialize) - -;; Mandatory theme, being from Leuven originally -(load-theme 'leuven t) - -;; ESS - for working in R -(autoload 'R-mode "ess-site.el" "Major mode for editing R source." t) - -(require 'org) - -;; Auctex -(load "auctex.el" nil t t) -(load "preview-latex.el" nil t t) - -;; org-mode support for R and LaTeX -(org-babel-do-load-languages - 'org-babel-load-languages - '((R . t) - (latex . t))) -;; Security risk - This is somewhat ill-advised it appears -(setq org-confirm-babel-evaluate nil) - -;; Automatically switch to various modes -(setq auto-mode-alist - '(("\\.mdwn\\'" . markdown-mode) - ("\\.md\\'" . markdown-mode) - ("\\.yarn\\'" . markdown-mode) - ("\\.js\\'" . js-mode) - ("\\.json\\'" . js-mode) - ("Makefile" . makefile-mode) - ("README" . markdown-mode) - ("NEWS" . markdown-mode) - ("COMMIT_EDITMSG\\'" . text-mode) - ("\\.html\\'" . html-mode) - ("\\.css\\'" . css-mode) - ("\\.yaml\\'" . yaml-mode) - ("\\.yml\\'" . yaml-mode) - ("\\.ick\\'" . yaml-mode) - ("\\.py\\'" . python-mode) - ("\\.R\\'" . R-mode) - ("\\.org\\'" . org-mode) - ("\\.sh\\'" . shell-script-mode))) - -;; Enable the melpa archive for packages -(require 'package) -(setq package-enable-at-startup nil) -(add-to-list 'package-archives - '("melpa" . "http://melpa.milkbox.net/packages/") t) -(add-to-list 'package-archives '("org" . "http://orgmode.org/elpa/") t) -(add-to-list 'package-archives - '("elpy" . "http://jorgenschaefer.github.io/packages/")) - - -(custom-set-variables - ;; custom-set-variables was added by Custom. - ;; If you edit it by hand, you could mess it up, so be careful. - ;; Your init file should contain only one such instance. - ;; If there is more than one, they won't work right. - '(org-export-backends (quote (ascii html icalendar latex md odt))) - '(package-selected-packages - (quote - (elpy ## org htmlize leuven-theme lua-mode ess-smart-underscore ess-R-data-view ess)))) -(custom-set-faces - ;; custom-set-faces was added by Custom. - ;; If you edit it by hand, you could mess it up, so be careful. - ;; Your init file should contain only one such instance. - ;; If there is more than one, they won't work right. - '(default ((t (:family "Source Code Pro" :foundry "ADBO" :slant normal :weight normal :height 143 :width normal))))) - - diff --git a/emacs/.emacs.d/init.el b/emacs/.emacs.d/init.el new file mode 100644 index 0000000..4d58dfe --- /dev/null +++ b/emacs/.emacs.d/init.el @@ -0,0 +1,176 @@ +;; Added by Package.el. This must come before configurations of +;; installed packages. Don't delete this line. If you don't want it, +;; just comment it out by adding a semicolon to the start of the line. +;; You may delete these explanatory comments. +(package-initialize) + +(add-to-list 'load-path "~/.emacs.d/lisp/") + +;; Use a dark theme now +;(load-theme 'wheatgrass) + +;; Use light theme +;;(load-theme 'leuven t) +(require 'modus-themes) +(load-theme 'modus-operandi t) +(setq modus-themes-mixed-fonts t) + +;; ESS - for working in R +(autoload 'R-mode "ess-site.el" "Major mode for editing R source." t) +(setq load-path (cons "/usr/share/emacs/site-lisp/ess" load-path)) +(load "/usr/share/emacs/site-lisp/ess/lisp/ess-site") +(setq inferior-julia-program-name "/usr/bin/julia") + +;; enable autocomplete +(add-hook 'after-init-hook 'global-company-mode) + +(require 'org) + +;; Automatically flow lines based on window width and use +;; variable width fonts in org-mode. +(add-hook 'org-mode-hook 'visual-line-mode) +(add-hook 'org-mode-hook 'variable-pitch-mode) + +;; Auctex +(load "auctex.el" nil t t) +(load "preview-latex.el" nil t t) + +;; org-mode support for R and LaTeX +(org-babel-do-load-languages + 'org-babel-load-languages + '((R . t) + (latex . t))) +;; Security risk - This is somewhat ill-advised it appears +(setq org-confirm-babel-evaluate nil) + +;; Automatically switch to various modes +(setq auto-mode-alist + '(("\\.mdwn\\'" . markdown-mode) + ("\\.md\\'" . markdown-mode) + ("\\.yarn\\'" . markdown-mode) + ("\\.js\\'" . js-mode) + ("\\.json\\'" . js-mode) + ("Makefile" . makefile-mode) + ("README" . markdown-mode) + ("NEWS" . markdown-mode) + ("COMMIT_EDITMSG\\'" . text-mode) + ("\\.html\\'" . html-mode) + ("\\.css\\'" . css-mode) + ("\\.yaml\\'" . yaml-mode) + ("\\.yml\\'" . yaml-mode) + ("\\.ick\\'" . yaml-mode) + ("\\.py\\'" . python-mode) + ("\\.R\\'" . R-mode) + ("\\.org\\'" . org-mode) + ("\\.sh\\'" . shell-script-mode) + ("\\.hs\\'" . haskell-mode) + ("\\.el\\'" . emacs-lisp-mode))) + +;; Enable the melpa archive for packages +(require 'package) +(setq package-enable-at-startup nil) +(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/") t) +(add-to-list 'package-archives '("org" . "http://orgmode.org/elpa/") t) +(add-to-list 'package-archives + '("elpy" . "http://jorgenschaefer.github.io/packages/")) + +(custom-set-variables + ;; custom-set-variables was added by Custom. + ;; If you edit it by hand, you could mess it up, so be careful. + ;; Your init file should contain only one such instance. + ;; If there is more than one, they won't work right. + '(browse-url-browser-function 'browse-url-firefox) + '(custom-safe-themes + '("0cf95236abcf59e05b1ea69b4edd53d293a5baec4fe4c3484543fee99bfd2204" "80b00f3bf7cdbdca6c80aadfbbb03145f3d0aacf6bf2a559301e61109954e30a" default)) + '(denote-directory "/home/frederik/Nextcloud/notes/" t) + '(org-export-backends '(ascii html icalendar latex md odt)) + '(package-selected-packages + '(ftable flx nerd-icons-dired nerd-icons all-the-icons-dired marginalia vertico denote ox-rss org-ql org-contrib mustache org-static-blog haskell-mode julia-mode elfeed-protocol ack company magit auctex lsp-mode elpy ## org htmlize leuven-theme lua-mode ess-smart-underscore ess-R-data-view ess))) +(custom-set-faces + ;; custom-set-faces was added by Custom. + ;; If you edit it by hand, you could mess it up, so be careful. + ;; Your init file should contain only one such instance. + ;; If there is more than one, they won't work right. + '(default ((t (:family "Source Code Pro" :foundry "ADBO" :slant normal :weight normal :height 143 :width normal))))) + + +;; Send mail using SMTP via mail.vanrenterghem.io. +(setq send-mail-function 'smtpmail-send-it) +(setq smtpmail-smtp-server "mail.vanrenterghem.io" + smtpmail-smtp-service 587 + smtpmail-stream-type 'starttls) +(setq user-full-name "Frederik Vanrenterghem" + smtpmail-local-domain "vanrenterghem.io" + user-mail-address (concat "frederik@" smtpmail-local-domain)) +(setq mail-default-headers + (concat "X-Mailer: GNU Emacs " (symbol-value 'emacs-version))) +(setq w3m-pop-up-frames t) + +(global-set-key [remap list-buffers] 'ibuffer) + +;;; use pass (~/.password-store) +;;; (see The Unix password store) +(auth-source-pass-enable) + +;; Elfeed news reader from Nextcloud +(require 'elfeed) +(require 'elfeed-protocol) + +(setq elfeed-use-curl nil) +(elfeed-set-timeout 36000) +(setq elfeed-protocol-feeds '( + ("owncloud+https://frederik@owncloud.vanrenterghem.biz" :use-authinfo t) + )) +(elfeed-protocol-enable) +(define-key elfeed-search-mode-map (kbd "*") (lambda () (interactive) (apply 'elfeed-search-toggle-all '(star)))) +(define-key elfeed-show-mode-map (kbd "*") (lambda () (interactive) (apply 'elfeed-show-tag '(star)))) + +;; Read email using mu4e +(require 'mu4e) +(setq mail-user-agent 'mu4e-user-agent) +(setq mu4e-get-mail-command "mbsync io") +(setq mu4e-update-interval 600) +(setq mu4e-use-fancy-chars t) +(setq mu4e-view-show-images t) +(setq mu4e-sent-folder "/Sent" + mu4e-drafts-folder "/Drafts" + mu4e-trash-folder "/Trash") + +;; Load configuration for website +;(load "mustache-html") + +;; Denote config +(setq denote-directory "/home/frederik/Nextcloud/notes/") + +;; Dired configuration +(with-eval-after-load 'dired + (require 'dired-x) + ;; Set dired-x global variables here. For example: + ;; (setq dired-x-hands-off-my-keys nil) + ) +(add-hook 'dired-mode-hook + (lambda () + ;; Set dired-x buffer-local variables here. + (dired-omit-mode 1) + (dired-hide-details-mode 1) + (nerd-icons-dired-mode 1) + )) +(setq delete-by-moving-to-trash t) +(setq dired-guess-shell-alist-user + '(("\\.\\(png\\|jpe?g\\|tiff\\)" "feh" "xdg-open") + ("\\.\\(mp[34]\\|m4a\\|ogg\\|flac\\|webm\\|mkv\\)" "mpv" "xdg-open") + (".*" "xdg-open"))) + +;; Use `vertico' package to get a vertical view of the minibuffer. +(setq vertico-resize nil) +(vertico-mode 1) + +;; Use `marginalia' package. This will display useful +;; annotations next to entries in the minibuffer. For example, when +;; using M-x it will show a brief description of the command as well +;; as the keybinding associated with it (if any). +(marginalia-mode 1) + +;; Use 'winner' mode to undo and redo windows changes +;; using C-c and C-c . +(winner-mode 1) diff --git a/i3/.config/i3/config b/i3/.config/i3/config new file mode 100644 index 0000000..e2a1d76 --- /dev/null +++ b/i3/.config/i3/config @@ -0,0 +1,201 @@ +# 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 up laptop monitor as primary screen and external screen on its right +# Managed by autorandr +exec --no-startup-id autorandr --change +#exec_always --no-startup-id xrandr --output eDP-1 --mode 2048x1152 --primary \ +# --output DP-1-2 --auto --mode 2560x1440 --right-of eDP-1 + +set $mod Mod4 + +# Move the current workspace to the next output +# (effectively toggles when you only have two outputs) +bindsym $mod+x move workspace to output next + +# Font for window titles. Will also be used by the bar unless a different font +# is used in the bar {} block below. +font pango:monospace 8 + +# This font is widely installed, provides lots of unicode glyphs, right-to-left +# text rendering and scalability on retina/hidpi displays (thanks to pango). +#font pango:DejaVu Sans Mono 8 + +# The combination of xss-lock, nm-applet and pactl is a popular choice, so +# they are included here as an example. Modify as you see fit. + +# xss-lock grabs a logind suspend inhibit lock and will use i3lock to lock the +# screen before suspend. Use loginctl lock-session to lock your screen. +exec --no-startup-id xss-lock --transfer-sleep-lock -- i3lock --nofork + +# NetworkManager is the most popular way to manage wireless networks on Linux, +# and nm-applet is a desktop environment-independent system tray GUI for it. +exec --no-startup-id nm-applet + +# Use pactl to adjust volume in PulseAudio. +set $refresh_i3status killall -SIGUSR1 i3status +bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +10% && $refresh_i3status +bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -10% && $refresh_i3status +bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle && $refresh_i3status +bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle && $refresh_i3status + +# 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+Shift+q kill + +# start dmenu (a program launcher) +bindsym $mod+d exec dmenu_run +# There also is the (new) i3-dmenu-desktop which only displays applications +# shipping a .desktop file. It is a wrapper around dmenu, so you need that +# installed. +# bindsym $mod+d exec --no-startup-id i3-dmenu-desktop + +# change focus +bindsym $mod+j focus left +bindsym $mod+k focus down +bindsym $mod+l focus up +bindsym $mod+semicolon 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+semicolon 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 + +# Define names for default workspaces for which we configure key bindings later on. +# We use variables to avoid repeating the names in multiple places. +set $ws1 "1" +set $ws2 "2" +set $ws3 "3" +set $ws4 "4" +set $ws5 "5" +set $ws6 "6" +set $ws7 "7" +set $ws8 "8" +set $ws9 "9" +set $ws10 "10" + +# switch to workspace +bindsym $mod+1 workspace number $ws1 +bindsym $mod+2 workspace number $ws2 +bindsym $mod+3 workspace number $ws3 +bindsym $mod+4 workspace number $ws4 +bindsym $mod+5 workspace number $ws5 +bindsym $mod+6 workspace number $ws6 +bindsym $mod+7 workspace number $ws7 +bindsym $mod+8 workspace number $ws8 +bindsym $mod+9 workspace number $ws9 +bindsym $mod+0 workspace number $ws10 + +# move focused container to workspace +bindsym $mod+Shift+1 move container to workspace number $ws1 +bindsym $mod+Shift+2 move container to workspace number $ws2 +bindsym $mod+Shift+3 move container to workspace number $ws3 +bindsym $mod+Shift+4 move container to workspace number $ws4 +bindsym $mod+Shift+5 move container to workspace number $ws5 +bindsym $mod+Shift+6 move container to workspace number $ws6 +bindsym $mod+Shift+7 move container to workspace number $ws7 +bindsym $mod+Shift+8 move container to workspace number $ws8 +bindsym $mod+Shift+9 move container to workspace number $ws9 +bindsym $mod+Shift+0 move container to workspace number $ws10 + +# 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 semicolon 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 or $mod+r + bindsym Return mode "default" + bindsym Escape mode "default" + bindsym $mod+r mode "default" +} + +bindsym $mod+r mode "resize" + +# Start i3bar to display a workspace bar (plus the system information i3status +# finds out, if available) +bar { + status_command i3status +} + + +# Display Wallpaper +exec_always feh --bg-fill images/20180418T1659__Outback_regenboog.jpg + +# Take a screenshot upon pressing PrtSc (select an area) +bindsym --release Print exec --no-startup-id import /tmp/`date +%Y%m%dT%H%M%S`--screenshot-`hostname`.png + +# Take a screenshot upon pressing PrtSc (select an area) +bindsym --release Shift+Print exec --no-startup-id import -window root /tmp/`date +%Y%m%dT%H%M%S`--screenshot-`hostname`.png diff --git a/i3status/.config/i3status/config b/i3status/.config/i3status/config new file mode 100644 index 0000000..ff54e46 --- /dev/null +++ b/i3status/.config/i3status/config @@ -0,0 +1,65 @@ +# 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 += "ipv6" +order += "wireless _first_" +order += "ethernet _first_" +order += "battery all" +order += "disk /" +order += "load" +order += "memory" +order += "volume master" +order += "tztime local" + +wireless _first_ { + format_up = "W: (%quality at %essid) %ip" + format_down = "W: down" +} + +ethernet _first_ { + format_up = "E: %ip (%speed)" + format_down = "E: down" +} + +battery all { + format = "%status %percentage %remaining" + status_chr = "⚡ CHR" + status_bat = "🔋 BAT" + status_unk = "? UNK" + status_full = "☻ FULL" + low_threshold = 10 +} + +disk "/" { + format = "%avail" +} + +load { + format = "%1min" +} + +memory { + format = "%used | %available" + threshold_degraded = "1G" + format_degraded = "MEMORY < %available" +} + +volume master { + format = "♪: %volume" + format_muted = "♪: muted (%volume)" + device = "pulse:alsa_output.pci-0000_00_1f.3.analog-stereo" +} + +tztime local { + format = "%Y-%m-%d %H:%M:%S" +} diff --git a/isync/.mbsyncrc b/isync/.mbsyncrc index 2ee438c..aaf3142 100644 --- a/isync/.mbsyncrc +++ b/isync/.mbsyncrc @@ -1,7 +1,7 @@ IMAPAccount io Host mail.vanrenterghem.io User frederik@vanrenterghem.io -PassCmd "gpg2 -q --for-your-eyes-only --no-tty -d ~/Documents/paswoorden/frederik@vanrenterghem.io.asc" +PassCmd "pass mail.vanrenterghem.io/frederik@vanrenterghem.io" SSLType IMAPS CertificateFile /etc/ssl/certs/ca-certificates.crt @@ -9,76 +9,16 @@ IMAPStore io-remote Account io MaildirStore io-local -Path ~/.mail/io/ -Inbox ~/.mail/io/Inbox - -Channel io-default -Master :io-remote: -Slave :io-local:Inbox - -Channel io-sent -Master :io-remote:"Sent" -slave :io-local:sent - -Channel io-trash -Master :io-remote:"Trash" -slave :io-local:trash - -Channel io-archive -Master :io-remote:"Archive" -slave :io-local:archive - -Channel io-junk -Master :io-remote:"Junk" -slave :io-local:junk +Path ~/Mail/mail.vanrenterghem.io/frederik/ +Inbox ~/Mail/mail.vanrenterghem.io/frederik/Inbox +Channel io +Far :io-remote: +Near :io-local: +Patterns * # Automatically create missing mailboxes, both locally and on the server Create Both # Automatically delete messages on either side if they are found deleted on the other. Expunge Both # Save the synchronization state files in the relevant directory SyncState * - -Group io -Channel io-default -Channel io-trash -Channel io-archive -Channel io-sent -Channel io-junk - -IMAPAccount biz -Host imap.gmail.com -User frederik@vanrenterghem.biz -PassCmd "gpg2 -q --for-your-eyes-only --no-tty -d ~/Documents/paswoorden/frederik@vanrenterghem.biz.asc" -SSLType IMAPS -CertificateFile /etc/ssl/certs/ca-certificates.crt - -IMAPStore biz-remote -Account biz - -MaildirStore biz-local -Subfolders Verbatim -Path ~/.mail/biz/ -Inbox ~/.mail/biz/Inbox - -Channel biz -Master :biz-remote: -Slave :biz-local: -# Exclude everything under the internal [Gmail] folder, except the interesting folders -Patterns * ![Gmail]* "[Gmail]/Sent Mail" "[Gmail]/Starred" "[Gmail]/All Mail" -# Or include everything -#Patterns * - -Channel biz-sent -Master :biz-remote:"[Gmail]/Verzonden berichten" -Slave :biz-local:sent -Create Slave - -# Automatically create missing mailboxes, both locally and on the server -Create Both -# Save the synchronization state files in the relevant directory -SyncState * - -Group biz -Channel biz -Channel biz-sent diff --git a/ssh/.ssh/config b/ssh/.ssh/config index 28c7458..32b89d1 100644 --- a/ssh/.ssh/config +++ b/ssh/.ssh/config @@ -23,12 +23,10 @@ Host laysan.onion User frederik PreferredAuthentications publickey IdentityFile /home/frederik/.ssh/id_rsa -Host A20.onion - HostName d77qthgfqebrzql2.onion - Port 22 - User frederik - PreferredAuthentications publickey - IdentityFile /home/frederik/.ssh/id_rsa +Host n9.onion + HostName w6zeptejzz5b7xuy.onion + Port 22 + User user Host *.onion ProxyCommand nc -xlocalhost:9050 -X5 %h %p diff --git a/sway/.config/sway/config b/sway/.config/sway/config index 5c55f52..90de322 100644 --- a/sway/.config/sway/config +++ b/sway/.config/sway/config @@ -220,4 +220,11 @@ bar { font pango:DejaVu Sans Mono 10 } +# Use swaylock via swayidle - lock screen after 5 minutes of inactivity +exec swayidle -w \ +timeout 300 'swaylock -f -c 000000' \ +timeout 600 'swaymsg "output * dpms off"' \ +resume 'swaymsg "output * dpms on"' \ +before-sleep 'swaylock -f -c 000000' + include /etc/sway/config.d/* diff --git a/sway/.config/sway/config.d/special_keys b/sway/.config/sway/config.d/special_keys new file mode 100644 index 0000000..46ea061 --- /dev/null +++ b/sway/.config/sway/config.d/special_keys @@ -0,0 +1,10 @@ +bindsym XF86AudioRaiseVolume exec pactl set-sink-volume @DEFAULT_SINK@ +5% +bindsym XF86AudioLowerVolume exec pactl set-sink-volume @DEFAULT_SINK@ -5% +bindsym pactl set-sink-mute `pactl list sinks short | grep RUNNING | awk '{print $1}'` toggle +bindsym XF86AudioMicMute exec pactl set-source-mute @DEFAULT_SOURCE@ toggle +bindsym XF86MonBrightnessDown exec brightnessctl set 5%- +bindsym XF86MonBrightnessUp exec brightnessctl set +5% +bindsym XF86AudioPlay exec playerctl play-pause +bindsym XF86AudioNext exec playerctl next +bindsym XF86AudioPrev exec playerctl previous + diff --git a/sway/.config/sway/scripts/gnome-keyring.sh b/sway/.config/sway/scripts/gnome-keyring.sh new file mode 100755 index 0000000..ac6b0a8 --- /dev/null +++ b/sway/.config/sway/scripts/gnome-keyring.sh @@ -0,0 +1,2 @@ +eval $(/usr/bin/gnome-keyring-daemon --start --components=gpg,pkcs11,secrets,ssh) +export GNOME_KEYRING_CONTROL GNOME_KEYRING_PID GPG_AGENT_INFO SSH_AUTH_SOCK diff --git a/systemd/.config/environment.d/envvars.conf b/systemd/.config/environment.d/envvars.conf new file mode 100644 index 0000000..0653e33 --- /dev/null +++ b/systemd/.config/environment.d/envvars.conf @@ -0,0 +1,5 @@ +# systemd user environment variables + +# Enable Wayland support for Firefox +# https://wiki.archlinux.org/index.php/Firefox#Wayland +MOZ_ENABLE_WAYLAND=1