~andreafeletto/dotfiles

9b7ab84e6a1fa80bb9046b15efe7d64166f1f07d — Andrea Feletto 3 years ago f875da1
update
M README.md => README.md +1 -0
@@ 5,6 5,7 @@
| river    | wayland compositor |
| waybar   | statusbar          |
| foot     | terminal emulator  |
| fuzzer   | command launcher   |
| bash     | shell              |
| vis      | text editor        |
| fff      | file manager       |

M amfora/.config/amfora/config.toml => amfora/.config/amfora/config.toml +7 -96
@@ 1,6 1,6 @@

[a-general]
home = 'gemini://andreafeletto.com'
home = "gemini://andreafeletto.com"
auto_redirect = false
http = 'default'
search = 'gemini://geminispace.info/search'


@@ 17,6 17,10 @@ emoji_favicons = false
scrollbar = 'never'

[keybindings]
bind_home         = '0'
bind_bookmarks    = 'b'
bind_add_bookmark = 'n'

bind_tab1 = 'Alt-1'
bind_tab2 = 'Alt-2'
bind_tab3 = 'Alt-3'


@@ 37,7 41,6 @@ bind_link6 = '6'
bind_link7 = '7'
bind_link8 = '8'
bind_link9 = '9'
bind_link0 = '0'

bind_back     = 'h'
bind_forward  = 'l'


@@ 52,10 55,6 @@ bind_close_tab = 'T'
bind_quit      = 'q'
bind_help      = '?'

bind_home         = 'Ctrl-H'
bind_bookmarks    = 'b'
bind_add_bookmark = 'n'

bind_sub     = 's'
bind_add_sub = 'Ctrl-S'
bind_save    = 'S'


@@ 73,103 72,15 @@ max_size = 0  # no limit
max_pages = 30
timeout = 300

[proxies]
# Allows setting a Gemini proxy for different schemes.
# The settings are similar to the url-handlers section above.
# E.g. to open a gopher page by connecting to a Gemini proxy server:
#   gopher = "example.com:123"
#
# Port 1965 is assumed if no port is specified.
#
# NOTE: These settings override any external handlers specified in
# the url-handlers section.
#
# Note that HTTP and HTTPS are treated as separate protocols here.


[subscriptions]
popup = true
update_interval = 300
workers = 3
entries_per_page = 20


[theme]
# This section is for changing the COLORS used in Amfora.
# These colors only apply if 'color' is enabled above.
# Colors can be set using a W3C color name, or a hex value such as "#ffffff".

# Note that not all colors will work on terminals that do not have truecolor support.
# If you want to stick to the standard 16 or 256 colors, you can get
# a list of those here: https://jonasjacek.github.io/colors/
# DO NOT use the names from that site, just the hex codes.

# Definitions:
#   bg = background
#   fg = foreground
#   dl = download
#   btn = button
#   hdg = heading
#   bkmk = bookmark
#   modal = a popup window/box in the middle of the screen

# EXAMPLES:
# hdg_1 = "green"
# hdg_2 = "#5f0000"

# Available keys to set:

# bg: background for pages, tab row, app in general
# tab_num: The number/highlight of the tabs at the top
# tab_divider: The color of the divider character between tab numbers: |
# bottombar_label: The color of the prompt that appears when you press space
# bottombar_text: The color of the text you type
# bottombar_bg
# scrollbar: The scrollbar that appears on the right for long pages

# hdg_1
# hdg_2
# hdg_3
# amfora_link: A link that Amfora supports viewing. For now this is only gemini://
# foreign_link: HTTP(S), Gopher, etc
# link_number: The silver number that appears to the left of a link
# regular_text: Normal gemini text, and plaintext documents
# quote_text
# preformatted_text
# list_text

# btn_bg: The bg color for all modal buttons
# btn_text: The text color for all modal buttons

# dl_choice_modal_bg
# dl_choice_modal_text
# dl_modal_bg
# dl_modal_text
# info_modal_bg
# info_modal_text
# error_modal_bg
# error_modal_text
# yesno_modal_bg
# yesno_modal_text
# tofu_modal_bg
# tofu_modal_text
# subscription_modal_bg
# subscription_modal_text

# input_modal_bg
# input_modal_text
# input_modal_field_bg: The bg of the input field, where you type the text
# input_modal_field_text: The color of the text you type

# bkmk_modal_bg
# bkmk_modal_text
# bkmk_modal_label
# bkmk_modal_field_bg
# bkmk_modal_field_text

[auth]
[auth.certs]
# "example.com" = 'mycert.crt'
"astrobotany.mozz.us" = "~/.local/share/amfora/astrobotany-cert.pem"
[auth.keys]
# "example.com" = 'mycert.key'
"astrobotany.mozz.us" = "~/.local/share/amfora/astrobotany-key.pem"


M bash/.bash_profile => bash/.bash_profile +1 -1
@@ 1,4 1,4 @@
#!/bin/sh
#!/usr/bin/env bash

[ -r "$HOME/.profile" ] && . "$HOME/.profile"
[ -r "$HOME/.bashrc" ] && . "$HOME/.bashrc"

M bash/.bashrc => bash/.bashrc +7 -5
@@ 6,10 6,10 @@ case $- in
esac

shopt -s histappend
shopt -s checkwinsize
shopt -s autocd
shopt -s cdspell
shopt -s cmdhist
shopt -s dirspell
shopt -s dotglob
shopt -s globstar
shopt -s no_empty_cmd_completion

bashcomp='/usr/share/bash-completion/bash_completion'
[ -r "$bashcomp" ] && . "$bashcomp"


@@ 17,9 17,11 @@ bashcomp='/usr/share/bash-completion/bash_completion'
aliases="$HOME/.bash_aliases"
[ -r "$aliases" ] && . "$aliases"

HISTCONTROL=erasedups:ignoreboth
HISTCONTROL=ignoreboth
HISTSIZE=
HISTFILESIZE=

[ $UID -eq 0 ] && PS1='# ' || PS1='$ '
export PS1

export GPG_TTY=$(tty)

M git/.config/git/config => git/.config/git/config +2 -2
@@ 1,10 1,10 @@
[user]
	email = andrea@andreafeletto.com
	name = Andrea Feletto
	email = andrea@andreafeletto.com
[init]
	defaultBranch = main
[pull]
	rebase = false
	rebase = true
[sendemail]
	smtpserver = smtp.migadu.com
	smtpuser = andrea@andreafeletto.com

A gnupg/.config/gnupg/gpg.conf => gnupg/.config/gnupg/gpg.conf +2 -0
@@ 0,0 1,2 @@
keyserver hkps://keys.openpgp.org
trust-model tofu

A mako/.config/mako/config => mako/.config/mako/config +2 -0
@@ 0,0 1,2 @@
background-color=#000000
border-color=#4C7899FF

M packages => packages +3 -0
@@ 8,6 8,9 @@ waybar
# file manager
fff

# crypto
signify

# desktop daemons
udiskie
network-manager-applet

M river/.config/river/init => river/.config/river/init +35 -23
@@ 3,26 3,29 @@
mod="Mod4"

riverctl map normal $mod Q spawn 'dmenu_path | menu | $SHELL'
riverctl map normal $mod W spawn $BROWSER
riverctl map normal $mod E spawn $TERMINAL
riverctl map normal $mod A spawn $TERMINAL fff
riverctl map normal $mod G spawn $TERMINAL amfora
riverctl map normal $mod W spawn '$BROWSER'
riverctl map normal $mod E spawn '$TERMINAL'
riverctl map normal $mod A spawn '$TERMINAL fff'
riverctl map normal $mod G spawn '$TERMINAL amfora'
riverctl map normal $mod O spawn 'xdg-open "$(dbrowse)"'

riverctl map normal $mod BackSpace close
riverctl map normal $mod+Shift BackSpace exit
riverctl map normal $mod+Shift Delete spawn byebye
riverctl map normal $mod+Shift Delete spawn 'byebye'

riverctl map normal $mod J focus-view next
riverctl map normal $mod K focus-view previous
riverctl map normal $mod H mod-layout-value rivertile fixed main_factor -0.05
riverctl map normal $mod L mod-layout-value rivertile fixed main_factor +0.05
riverctl map normal $mod H send-layout-cmd rivertile 'main-ratio -0.05'
riverctl map normal $mod L send-layout-cmd rivertile 'main-ratio +0.05'

riverctl map normal $mod M toggle-fullscreen
riverctl map normal $mod Space toggle-float
riverctl map normal $mod Return zoom
riverctl map normal $mod Tab swap next

riverctl map normal $mod N spawn 'makoctl dismiss --all'
riverctl map normal $mod+Shift N spawn 'makoctl restore'

riverctl map-pointer normal $mod BTN_LEFT move-view
riverctl map-pointer normal $mod+Shift BTN_LEFT resize-view



@@ 36,31 39,40 @@ done

for mode in normal locked; do
	riverctl map $mode None XF86AudioRaiseVolume spawn \
		pulsemixer --unmute --change-volume +5
		'pulsemixer --unmute --change-volume +5'
	riverctl map $mode None XF86AudioLowerVolume spawn \
		pulsemixer --unmute --change-volume -5
		'pulsemixer --unmute --change-volume -5'
	riverctl map $mode None XF86AudioMute spawn \
		pulsemixer --toggle-mute
		'pulsemixer --toggle-mute'
	riverctl map $mode None XF86MonBrightnessUp spawn \
		brightnessctl s +5%
		'brightnessctl s +5%'
	riverctl map $mode None XF86MonBrightnessDown spawn \
		brightnessctl s 5%-
		'brightnessctl s 5%-'
	riverctl map $mode None Print spawn \
		screenshot
		'screenshot'
	riverctl map $mode Shift Print spawn \
		screenshot region
		'screenshot region'
done

riverctl set-repeat 50 200

riverctl spawn waybar
riverctl spawn gammastep
riverctl spawn mako
riverctl spawn nm-applet --indicator
riverctl spawn blueman-applet
riverctl spawn udiskie --automount --notify --smart-tray --menu flat
riverctl spawn /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
riverctl spawn 1password --silent
touchpad='2:7:SynPS/2_Synaptics_TouchPad'
riverctl input $touchpad tap enabled
riverctl input $touchpad natural-scroll enabled
riverctl input $touchpad pointer-accel 0.4

riverctl border-width 4
riverctl border-color-focused 0x93a1a1
riverctl border-color-unfocused 0x325b68

riverctl spawn 'waybar'
riverctl spawn 'gammastep'
riverctl spawn 'mako'
riverctl spawn 'nm-applet --indicator'
riverctl spawn 'blueman-applet'
riverctl spawn 'udiskie --automount --notify --tray'
riverctl spawn '/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1'
riverctl spawn '1password --silent'

riverctl default-layout rivertile
exec rivertile -main-factor 0.5 -view-padding 0 -outer-padding 0
exec rivertile -main-ratio 0.5 -view-padding 8 -outer-padding 8

M river/.local/bin/wm => river/.local/bin/wm +5 -2
@@ 1,8 1,11 @@
#!/bin/sh

export XDG_SESSION_TYPE=wayland
export XKB_DEFAULT_LAYOUT=it
export XKB_DEFAULT_OPTIONS="caps:swapescape"
export _JAVA_AWT_WM_NONREPARENTING=1
export XDG_SESSION_TYPE=wayland
export SDL_VIDEODRIVER=wayland
export MOZ_ENABLE_WAYLAND=1
export MOZ_USE_XINPUT2=1
export _JAVA_AWT_WM_NONREPARENTING=1

river > "$HOME/.local/share/river.log" 2>&1

M services => services +1 -1
@@ 1,4 1,4 @@
bluetooth
NetworkManager
ly
greetd
systemd-timesyncd

M vis/.config/vis/visrc.lua => vis/.config/vis/visrc.lua +7 -15
@@ 10,7 10,6 @@ fzf.fzf_args = "--height 50% --margin 5% --preview 'cat {}'"
prs = require('plugins/pairs')
prs.autopairs = false

-- <C-w>e to enable and <C-w>d to disable
spell = require('plugins/spellcheck')
spell.cmd = "nuspell -d %s"
spell.list_cmd = "nuspell -l -d %s"


@@ 25,34 24,27 @@ vis.events.subscribe(vis.events.INIT, function()
	-- System Clipboard --
	vis:map(vis.modes.NORMAL, ' y', '"+<vis-operator-yank>')
	vis:map(vis.modes.VISUAL, ' y', '"+<vis-operator-yank>')
	vis:map(vis.modes.VISUAL_LINE, ' y', '"+<vis-operator-yank>')
	-- FZF --
	vis:map(vis.modes.NORMAL, ' f', ':fzf<Enter><Enter>')
	-- Toggle Spellcheck --
	vis:map(vis.modes.NORMAL, ' s', '<F7>')

	-- Disable Arrows --
	keys = {'<Left>', '<Right>', '<Up>', '<Down>'}
	for _, key in ipairs(keys) do
		vis:map(vis.modes.NORMAL, key, '')
		vis:map(vis.modes.INSERT, key, '')
		vis:map(vis.modes.VISUAL, key, '')
	end
end)

vis.events.subscribe(vis.events.WIN_OPEN, function(win)
	vis:command('set relativenumbers')
	vis:command('set colorcolumn 80')
	vis:command('set cursorline')

	if win.syntax == 'python' then
	if win.syntax == 'c' or win.syntax == 'bash' then
		vis:command('set colorcolumn 80')
	elseif win.syntax == 'python' then
		vis:command('set tabwidth 4')
		vis:command('set expandtab')
	end
	if win.syntax == 'zig' then
		vis:command('set colorcolumn 80')
	elseif win.syntax == 'zig' then
		vis:command('set tabwidth 4')
		vis:command('set expandtab')
	end
	if win.syntax == 'html' then
	elseif win.syntax == 'html' then
		vis:command('set tabwidth 2')
		vis:command('set expandtab')
	end

M xdg/.config/mimeapps.list => xdg/.config/mimeapps.list +2 -2
@@ 1,9 1,9 @@
[Default Applications]
application/gzip=zip.desktop
application/pdf=pdf.desktop;
application/pdf=org.pwmt.zathura.desktop;
application/x-bittorent=torrent.desktop;
application/zip=zip.desktop
image/vnd.djvu=pdf.desktop;
image/vnd.djvu=org.pwmt.zathura.desktop;
image/gif=imv.desktop;
image/jpeg=imv.desktop;
image/png=imv.desktop;

M xdg/.local/share/applications/filemanager.desktop => xdg/.local/share/applications/filemanager.desktop +1 -1
@@ 1,5 1,5 @@
[Desktop Entry]
Type=Application
Name=fff
Exec=/usr/local/bin/st -e fff %u
Exec=/usr/bin/foot -e fff %u
NoDisplay=true

D xdg/.local/share/applications/pdf.desktop => xdg/.local/share/applications/pdf.desktop +0 -5
@@ 1,5 0,0 @@
[Desktop Entry]
Type=Application
Name=Zathura
Exec=/usr/bin/zathura %u
NoDisplay=true

M xdg/.local/share/applications/text.desktop => xdg/.local/share/applications/text.desktop +1 -1
@@ 1,5 1,5 @@
[Desktop Entry]
Type=Application
Name=vis
Exec=/usr/local/bin/st -e vis %u
Exec=/usr/bin/foot -e vis %u
NoDisplay=true

A zathura/.config/zathura/zathurarc => zathura/.config/zathura/zathurarc +7 -0
@@ 0,0 1,7 @@

set selection-clipboard clipboard

map [normal] <A-l> follow
map [fullscreen] <A-l> follow
map [normal] f toggle_fullscreen
map [fullscreen] f toggle_fullscreen