myconfig

my config files
git clone https://a3nm.net/git/myconfig/
Log | Files | Refs | README

commit a7b53fd7f52c3f45f7d9f57e6660fce9c1698414
parent 5aa1e11a2c9be24e7d6382837b8efbba344deab3
Author: Antoine Amarilli <a3nm@a3nm.net>
Date:   Sat, 23 Nov 2019 13:00:43 +0100

Merge branch 'master' of a3nm.net:git/myconfig

Diffstat:
Xdefaults | 2+-
apt/arduino | 1+
apt/audio | 2+-
apt/cd | 1+
apt/desktop | 33++++++++++++++++++++-------------
apt/devel_recent | 6+++---
apt/dict | 2+-
apt/dvd_create | 3+++
apt/enum_spanner_rs | 1+
apt/games | 7++++---
apt/gollum | 2++
apt/headless | 11+++++++++--
apt/inf344 | 6++++++
apt/inkscape | 1-
apt/irctk | 1+
apt/libs | 1+
apt/mailhost | 2++
apt/minimal | 3++-
apt/misc | 5+++++
apt/printer | 6++++++
apt/python | 24++++++++++++++++++------
apt/servehttp | 1-
apt/server | 6++++--
apt/serveradicale | 1+
apt/steam | 2+-
apt/wayland | 47+++++++++++++++++++++++++++++------------------
apt/wayland-old | 20++++++++++++++++++++
apt/wine | 4++--
cgit/cgitrc | 1-
firefox/about_config | 5+++++
gitconfig | 1+
i3/config | 5+++--
install.sh | 5+++++
mailcap | 8++++++++
manual | 2--
mimeapps.list | 7+++++--
mpv/mpv.conf | 2++
mutt/fix_998 | 4++--
mutt/muttrc | 26++++++++++++++++++++------
prefs.js | 87+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
reportbugrc | 19+++++++++++++++++++
sway/config | 192+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
sway/status | 65+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
vim/spell.vim | 23+++++++++++++++++++++++
weechat | 25-------------------------
weechat/.empty | 0
weechat_2 | 25+++++++++++++++++++++++++
xinitrc | 3++-
xkb/README | 10++++++++++
xkb/symbols/a3nm | 7+++++++
xkb/symbols/accents | 30+++++++++++++++---------------
zsh/path | 3+++
52 files changed, 644 insertions(+), 112 deletions(-)

diff --git a/Xdefaults b/Xdefaults @@ -41,7 +41,7 @@ URxvt.keysym.M-y: perl:keyboard-select:activate #URxvt.keysym.M-v: perl:clipboard:paste #URxvt.keysym.M-C-v: perl:clipboard:paste_escaped #URxvt.urlLauncher: w3mn -URxvt.urlLauncher: iceweasel2 +URxvt.urlLauncher: sandboxed-browser URxvt.keysym.M-j: command:\033]720;23\007 URxvt.keysym.M-k: command:\033]721;23\007 URxvt.print-pipe: cat > ~/temp/urxvt.dmp diff --git a/apt/arduino b/apt/arduino @@ -0,0 +1 @@ +arduino diff --git a/apt/audio b/apt/audio @@ -4,9 +4,9 @@ timidity freepats fluid-soundfont-gm fluid-soundfont-gs -timgm6mb-soundfont sox speex alsa-utils libsox-fmt-mp3 # mp3 handler for sox bpm-tools +musescore-general-soundfont diff --git a/apt/cd b/apt/cd @@ -6,4 +6,5 @@ glyrc flac dvdbackup +handbrake # rip DVDs easily (but lossily) # seems obsolete: libdvdcss2 diff --git a/apt/desktop b/apt/desktop @@ -1,6 +1,8 @@ # graphical applications desktop-base +vim-gtk # needed for clipboard support in the CLI version + audacity cheese diffpdf @@ -25,7 +27,6 @@ okular openbox xclip xinit -xnest xpdf xterm xtrlock @@ -62,15 +63,15 @@ lmodern # flashplugin-nonfree -vim-gtk - scrot gtk-recordmydesktop rosegarden +musescore lilypond +solfege -linphone +# linphone lm-sensors fastboot wodim @@ -96,11 +97,8 @@ xdotool xinput xserver-xephyr hsetroot -consolekit -xpra -calibre +# consolekit # not sure why this was useful libpdf-api2-perl # ~/bin/pdf-rect.pl -beep pm-utils # not just for laptops! vbetool # potentially useful dependency @@ -118,12 +116,10 @@ vlc vlc-plugin-notify vlc-plugin-video-splitter # might be useful one day? va-driver-all # GPU video acceleration, including intel -vdpau-driver-all # GPU video acceleration (useless?) +# vdpau-driver-all # GPU video acceleration (useless?) virtualenv -electrum # bitcoin client - compton # to try and solve tearing # fontforge # once needed for a pdf hack @@ -134,14 +130,14 @@ fonts-roboto redshift openshot # simple video editing -frei0r-plugins # openshot recommendation +# frei0r-plugins # openshot recommendation, but large... gstreamer1.0-libav gstreamer1.0-plugins-ugly pinentry-gtk2 # for xpass -filezilla # work around lftp limitations +# filezilla # work around lftp limitations gnome-sound-recorder # easy test of sound recording feh @@ -183,3 +179,14 @@ pulseaudio rtkit # realtime? acpi-support # only for laptops, because it depends on X + +gitit # playing with this wiki engine + +# blender # too large + +gnome-terminal + +libsecp256k1-0 # for electrum + +vainfo # info about hardware acceleration + diff --git a/apt/devel_recent b/apt/devel_recent @@ -1,3 +1,3 @@ -openjdk-9-doc -openjdk-9-jdk -libstdc++-5-doc +# openjdk-9-doc +# openjdk-9-jdk +libstdc++-6-doc diff --git a/apt/dict b/apt/dict @@ -2,5 +2,5 @@ wamerican-insane wdiff wfrench -aspell-fr +# aspell-fr # not actually used myspell-fr diff --git a/apt/dvd_create b/apt/dvd_create @@ -0,0 +1,3 @@ +# create video dvds +devede +dvd+rw-tools diff --git a/apt/enum_spanner_rs b/apt/enum_spanner_rs @@ -0,0 +1 @@ +cargo diff --git a/apt/games b/apt/games @@ -10,7 +10,7 @@ burgerspace criticalmass cultivation excellent-bifurcation -frozen-bubble +# frozen-bubble # garden-of-coloured-lights # gnibbles # gnome-sudoku @@ -25,8 +25,6 @@ gunroar jumpnbump jumpnbump-levels kobodeluxe -openarena -openarena-oacmp1 parsec47 passage rrootage @@ -54,3 +52,6 @@ mcomix # read manga caca-utils toilet # text in ascii art + +# too large: openarena +# too large: openarena-oacmp1 diff --git a/apt/gollum b/apt/gollum @@ -0,0 +1,2 @@ +ruby-gollum-lib +ruby-dev diff --git a/apt/headless b/apt/headless @@ -6,7 +6,7 @@ debtree epub-utils # lit2epub optipng gifsicle -mercurial +# mercurial llgal cmake task-english @@ -35,6 +35,7 @@ geographiclib-tools # bigworld gnutls-bin # for ssl debugging dovecot-sieve # to edit my filters pelican # blog +nodejs # addmathjax for blog convmv # rename files with broken names mediainfo # show meta-information of videos colortest # test terminal colors @@ -61,7 +62,7 @@ dvipng # convert from dvi to png fig2dev # convert xfig files libwmf-bin # convert WMF files -emacs +# emacs # large and not used firejail firejail-profiles @@ -73,3 +74,9 @@ wavpack # some sound format surfraw surfraw-extra + +binwalk # find files in binary stream; lots of graphic dependencies + +toot # mastodon + +apparmor # security diff --git a/apt/inf344 b/apt/inf344 @@ -0,0 +1,6 @@ +python3-unittest2 +python3-flask-cache +python3-flaskext.multistatic +python3-pandas +python3-wtforms +python3-ipdb diff --git a/apt/inkscape b/apt/inkscape @@ -1,6 +1,5 @@ libgc-dev cmake-curses-gui -bzr libboost-dev libglibmm-2.4-dev libgsl-dev diff --git a/apt/irctk b/apt/irctk @@ -0,0 +1 @@ +libssl1.0-dev # to build libircclient diff --git a/apt/libs b/apt/libs @@ -4,3 +4,4 @@ libxml2-dev libmidi-perl # for mid2csound.pl libconfig-dev # for ngp libncurses5-dev # for ngp +libgit2-dev # for stagit diff --git a/apt/mailhost b/apt/mailhost @@ -0,0 +1,2 @@ +notmuch +fetchmail diff --git a/apt/minimal b/apt/minimal @@ -7,6 +7,7 @@ rsync sudo vim screen +reptyr socat strace @@ -134,7 +135,7 @@ console-common # seems to be useful for keymaps too console-setup # seems to be useful for keymaps too cron -exim4 # local mail delivery for cron +msmtp # local mail delivery for cron isc-dhcp-client # dhclient isc-dhcp-common # manpages diff --git a/apt/misc b/apt/misc @@ -52,3 +52,8 @@ firmware-linux-free irqbalance qemu-user-static # chroot into an ARM system + +pdf2svg + +mdf2iso +psutils # manipulate PS documents diff --git a/apt/printer b/apt/printer @@ -0,0 +1,6 @@ +cups +cups-client +cups-filters +tesseract-ocr +tesseract-ocr-fra +ocrmypdf diff --git a/apt/python b/apt/python @@ -20,10 +20,10 @@ python-debian python-dev python-flask python-fuse -python-matplotlib +#python-matplotlib python-pyglet python-pyquery -python-statsmodels +# python-statsmodels python-cvxopt python-scipy @@ -38,10 +38,6 @@ pyflakes python3-pil # rasterald python3-scipy # rasterald -python-gtk2-dev # for xpra -python-cups # to avoid spam from xpra -python-gtkglext1 # recommends from xpra - python-virtualenv # dissemin virtualenv @@ -62,3 +58,19 @@ python3-pylint-common python-rsvg # my old tetris project python3-pymysql # drime + +python-nltk # i played with it at some point + +python3-icalendar # for git/dig_seminar + +python3-defusedxml # for git/minediff + +python3-termcolor # for git/enum-spanner +python3-tqdm # for git/enum-spanner +python3-graphviz # for git/enum-spanner + +python3-pytest # for plint + +python3-imageio # for image processing for misc/melodia + +pypy3 diff --git a/apt/servehttp b/apt/servehttp @@ -1,4 +1,3 @@ lighttpd libjs-mathjax fonts-mathjax -cgit diff --git a/apt/server b/apt/server @@ -27,7 +27,6 @@ dnsutils ethtool liburi-perl # for ~/bin/mail_summary libmime-tools-perl # for ~/bin/mail_summary -libssl-dev # to build libircclient libtool # for libtoolize, for builds archivemount autoconf @@ -62,7 +61,6 @@ apache2-utils # for htpasswd pdftk qpdf -psutils # manipulate PS documents manpages @@ -70,6 +68,7 @@ tig myrepos # update multiple repositories git-svn git-email +git-crypt lbdb elinks # to view HTML in mutt @@ -105,3 +104,6 @@ gsfonts-other easy-rsa hopenpgp-tools tcplay # truecrypt alternative + +syncthing # used on the phone + diff --git a/apt/serveradicale b/apt/serveradicale @@ -1,2 +1,3 @@ radicale libapache2-mod-wsgi +python-radicale diff --git a/apt/steam b/apt/steam @@ -1,6 +1,6 @@ # steam and other blobby games -libcurl3:i386 +# libcurl3:i386 # now obsolete and incompatible with other packages libegl1-mesa:i386 # looks obsolete: libtinfo:i386 libgl1-mesa-dri:i386 diff --git a/apt/wayland b/apt/wayland @@ -1,20 +1,31 @@ +# == wlroots == +libavcodec-dev +libavformat-dev +libavutil-dev +libcap-dev +libdrm2 +libdrm-dev +libegl1-mesa-dev +libgbm-dev +libgles2-mesa-dev libinput-dev -weston +libpixman-1-dev +libpng-dev +libsystemd-dev +libxcb-composite0-dev +libxcb-icccm4-dev +libxcb-xinput-dev +libxkbcommon-dev +meson +wayland-protocols xwayland -libudev-dev -libwayland-dev -libx11-dev -libxcomposite-dev -libxdamage-dev -libxfixes-dev -libxext-dev -libxrender-dev -libxrandr-dev -libxinerama-dev -libpcre3-dev -libconfig-dev -libdrm-dev -libgl1-mesa-dev -libdbus-1-dev -asciidoc -libxcb-ewmh-dev + +# == sway == +libjson-c-dev +libcairo2-dev +libgdk-pixbuf2.0-dev +libpam0g-dev +libpango1.0-dev +scdoc + +grim # screenshot diff --git a/apt/wayland-old b/apt/wayland-old @@ -0,0 +1,20 @@ +libinput-dev +weston +xwayland +libudev-dev +libwayland-dev +libx11-dev +libxcomposite-dev +libxdamage-dev +libxfixes-dev +libxext-dev +libxrender-dev +libxrandr-dev +libxinerama-dev +libpcre3-dev +libconfig-dev +libdrm-dev +libgl1-mesa-dev +libdbus-1-dev +asciidoc +libxcb-ewmh-dev diff --git a/apt/wine b/apt/wine @@ -1,7 +1,5 @@ # wine and useful related packages playonlinux -wine -wine64 wine32:i386 libasound2:i386 libasound2-plugins:i386 @@ -9,3 +7,5 @@ libc6-i386 libcurl3-gnutls:i386 # for don't starve winetricks wine-development +wine64-development +wine diff --git a/cgit/cgitrc b/cgit/cgitrc @@ -18,5 +18,4 @@ enable-index-owner=0 enable-git-config=1 scan-path=/home/a3_nm/git/ max-blob-size=1000 -footer=/home/a3_nm/cgit_footer max-repodesc-length=1024 diff --git a/firefox/about_config b/firefox/about_config @@ -0,0 +1,5 @@ +network.captive-portal-service.enabled false +network.proxy.socks_remote_dns true +pdfjs.disabled true +media.autoplay.enabled false + diff --git a/gitconfig b/gitconfig @@ -5,6 +5,7 @@ [user] name = Antoine Amarilli email = a3nm@a3nm.net + signingkey = 80D88B22D4330331 [status] relativePaths = false [alias] diff --git a/i3/config b/i3/config @@ -26,7 +26,8 @@ focus_follows_mouse yes bindsym $mod+shift+Return exec "~/bin/urxvtcdfont" bindsym $mod+Return exec "urxvtpwd ~/bin/urxvtcdfont" -bindsym $mod+b exec "iceweasel2" +bindsym $mod+b exec "~/bin/sandboxed-browser" +bindsym $mod+Shift+b exec "/usr/bin/firefox" bindsym $mod+o exec "urxvtcdfont -e ~/bin/my-mutt" bindsym $mod+i exec "urxvtcdfont -e ~/bin_private/weechat" bindsym $mod+Shift+t exec "scrot" @@ -180,4 +181,4 @@ bindsym XF86MonBrightnessDown exec /usr/bin/xbacklight -dec 5 #TODO default split ratio 2/3 #TODO default veritcal split is stacked -exec ~/bin/startup +exec ~/bin/startup_i3 diff --git a/install.sh b/install.sh @@ -6,6 +6,8 @@ command -v git >/dev/null 2>&1 || { echo "I require git but it's not installed. touch ~/-@ # http://unix.stackexchange.com/a/77868 +mkdir -p ~/.config + mkdir -p ~/logs mkdir -p ~/temp/{vim,mutt,lock} mkdir -p ~/temp/vim/{temp,backup} @@ -65,8 +67,11 @@ ln -s ~/config/gnupg/gpg-agent.conf ~/.gnupg/gpg-agent.conf ln -s ~/config/gnupg/gpg.conf ~/.gnupg/gpg.conf ln -s ~/config/i3/config ~/.i3/config +ln -s ~/config/sway ~/.config/sway +ln -s ~/config/mpv ~/.config/mpv ln -s ~/config/latexmk ~/.latexmkrc ln -s ~/config/abcde ~/.abcde.conf +ln -s ~/config/reportbugrc ~/.reportbugrc ln -s ~/config/xpdf ~/.xpdfrc touch ~/.hushlogin ln -s ~/config/i3/status ~/.i3status.conf diff --git a/mailcap b/mailcap @@ -8,7 +8,15 @@ image/*; /usr/bin/feh -.Z '%s' # to ensure that external resources cannot get loaded # TODO -no-remote allows only one instance at a time, but -P requires it... text/html; ~/bin/mutt_bgrun /usr/bin/firefox -P mutt -no-remote %s; nametemplate=%s.html +application/xhtml+xml; ~/bin/mutt_bgrun /usr/bin/firefox -P mutt -no-remote %s; nametemplate=%s.html # dump with colors, remove useless whitespace text/html; iconv -f %{charset} %s | elinks -dump %{charset} -dump -dump-color-mode 1 /dev/stdin 2>/dev/null | sed 's/ *$//' | sed 's/ //'; copiousoutput +application/xhtml+xml; iconv -f %{charset} %s | elinks -dump %{charset} -dump -dump-color-mode 1 /dev/stdin 2>/dev/null | sed 's/ *$//' | sed 's/ //'; copiousoutput +application/docx; libreoffice '%s'; test=test -n "$DISPLAY" +application/doc; libreoffice '%s'; test=test -n "$DISPLAY" +application/vnd.openxmlformats; libreoffice '%s'; test=test -n "$DISPLAY" +application/x-mobi8-ebook; ebook-edit %s; test=test -n "$DISPLAY" +application/epub+zip; fbreader %s; test=test -n "$DISPLAY" +application/vnd.openxmlformats-officedocument.wordprocessingml.document; libreoffice %s; test=test -n "$DISPLAY" diff --git a/manual b/manual @@ -1,2 +0,0 @@ -verbiste -notmuch diff --git a/mimeapps.list b/mimeapps.list @@ -1,3 +1,6 @@ - [Default Applications] -application/pdf=evince.desktop +application/pdf=org.gnome.Evince.desktop + +[Added Associations] +image/jpeg=eog.desktop;geeqie.desktop; +video/mp4=vlc.desktop; diff --git a/mpv/mpv.conf b/mpv/mpv.conf @@ -0,0 +1,2 @@ +hwdec=auto +gpu-context=wayland diff --git a/mutt/fix_998 b/mutt/fix_998 @@ -1,6 +1,6 @@ # fix for https://github.com/neomutt/neomutt/issues/998 -set pgp_encrypt_only_command="/usr/lib/neomutt/pgpewrap gpg --batch --quiet --no-verbose --output - --textmode --armor --always-trust --encrypt -- --recipient %r -- %f" +set pgp_encrypt_only_command="/usr/libexec/neomutt/pgpewrap gpg --batch --quiet --no-verbose --output - --textmode --armor --always-trust --encrypt -- --recipient %r -- %f" -set pgp_encrypt_sign_command="/usr/lib/neomutt/pgpewrap gpg %?p?--pinentry-mode loopback --passphrase-fd 0? --batch --quiet --no-verbose --textmode --output - %?a?--local-user %a? --armor --always-trust --sign --encrypt -- --recipient %r -- %f" +set pgp_encrypt_sign_command="/usr/libexec/neomutt/pgpewrap gpg %?p?--pinentry-mode loopback --passphrase-fd 0? --batch --quiet --no-verbose --textmode --output - %?a?--local-user %a? --armor --always-trust --sign --encrypt -- --recipient %r -- %f" diff --git a/mutt/muttrc b/mutt/muttrc @@ -70,7 +70,7 @@ bind index - collapse-thread bind index _ collapse-all # formats -set index_format="%{%d/%m %H:%M}%Z %-15.15L %?M?<#%03M>&? %s" +set index_format="%<[y?%<[m?%<[d?%[#%H:%M]&%[%a %d]>&%[%b %d]>&%[%Y%m]> %Z %-15.15L %?M?<#%03M>&? %s" set pager_format="%4c -%Z- %C/%m: %-20.20n %s" set status_format="%r%f %?l?%l? %?M?%M/?%m:%?n? N%n?%?o? O%o?%?d? D%d?%?F? !%F?%?t? *%t?%> %h (%s/%S%?V?-%V?) (%P)" @@ -148,11 +148,6 @@ bind index,pager . sidebar-toggle-visible macro index,pager , \ "<enter-command>set my_old_visible=\$sidebar_visible sidebar_visible<enter><sidebar-next><sidebar-open><enter-command>set sidebar_visible=\$my_old_visible<enter>" -# notmuch - -bind index,pager \\ vfolder-from-query -bind index,pager z entire-thread - # == Postponed mail == # save postponed mail in the inbox @@ -178,6 +173,25 @@ folder-hook . push 'B=*' auto_view text/html # still, prefer text if available alternative_order text/plain text/enriched text/html +# press 'H' on a message to change this setting once and view the HTML part in priority +macro index H \ + "<enter-command>unalternative_order *<enter><display-message><enter-command>alternative_order text/plain text/enriched text/html<enter>" +macro pager H \ + "<exit>H" # http://mutt-users.mutt.narkive.com/t0y58ITT/sort-mailbox-by-spam-tag-score-sorting-strangeness spam "X-Spam-Status: (Yes|No), score=(-?[[:digit:]]+\.[[:digit:]]+)" "%2" + +folder-hook . push '*' + +# == notmuch == +bind index,pager z entire-thread +macro index,pager \\ "<vfolder-from-query>" +# dirty hack to ensure that vfolder-from-query is read-only +# at the bottom of the file beacuse it has to be executed first +folder-hook . "set read_only=no" +folder-hook (^notmuch) "set read_only=yes" + +set abort_noattach = ask-yes +set abort_noattach_regex = "^([^>].*)?\\<(attach(|ed|ments?)|(attaché|attachés|attache|attachons|joint|jointe|joints|jointes|joins|joignons))\\>" + diff --git a/prefs.js b/prefs.js @@ -0,0 +1,87 @@ +user_pref("app.normandy.api_url", ""); +user_pref("app.normandy.enabled", false); +user_pref("app.shield.optoutstudies.enabled", false); +user_pref("app.update.auto", false); +user_pref("app.update.enabled", false); +user_pref("beacon.enabled", false); +user_pref("breakpad.reportURL", ""); +user_pref("browser.crashReports.unsubmittedCheck.autoSubmit", false); +user_pref("browser.crashReports.unsubmittedCheck.autoSubmit2", false); +user_pref("browser.crashReports.unsubmittedCheck.enabled", false); +user_pref("browser.disableResetPrompt", true); +user_pref("browser.fixup.alternate.enabled", false); +user_pref("browser.newtab.preload", false); +user_pref("browser.newtabpage.activity-stream.section.highlights.includePocket", false); +user_pref("browser.newtabpage.enabled", false); +user_pref("browser.newtabpage.enhanced", false); +user_pref("browser.newtabpage.introShown", true); +user_pref("browser.safebrowsing.appRepURL", ""); +user_pref("browser.safebrowsing.blockedURIs.enabled", false); +user_pref("browser.safebrowsing.downloads.enabled", false); +user_pref("browser.safebrowsing.downloads.remote.enabled", false); +user_pref("browser.safebrowsing.downloads.remote.url", ""); +user_pref("browser.safebrowsing.enabled", false); +user_pref("browser.safebrowsing.malware.enabled", false); +user_pref("browser.safebrowsing.phishing.enabled", false); +user_pref("browser.search.suggest.enabled", false); +user_pref("browser.selfsupport.url", ""); +user_pref("browser.send_pings", false); +user_pref("browser.shell.checkDefaultBrowser", false); +user_pref("browser.startup.homepage_override.mstone", "ignore"); +user_pref("browser.tabs.crashReporting.sendReport", false); +user_pref("browser.urlbar.speculativeConnect.enabled", false); +user_pref("browser.urlbar.trimURLs", false); +user_pref("datareporting.healthreport.service.enabled", false); +user_pref("datareporting.healthreport.uploadEnabled", false); +user_pref("datareporting.policy.dataSubmissionEnabled", false); +user_pref("dom.battery.enabled", false); +user_pref("dom.event.clipboardevents.enabled", false); +user_pref("dom.indexedDB.enabled", false); +user_pref("experiments.activeExperiment", false); +user_pref("experiments.enabled", false); +user_pref("experiments.manifest.uri", ""); +user_pref("experiments.supported", false); +user_pref("extensions.CanvasBlocker@kkapsner.de.whiteList", ""); +user_pref("extensions.getAddons.cache.enabled", false); +user_pref("extensions.getAddons.showPane", false); +user_pref("extensions.greasemonkey.stats.optedin", false); +user_pref("extensions.greasemonkey.stats.url", ""); +user_pref("extensions.pocket.enabled", false); +user_pref("extensions.shield-recipe-client.api_url", ""); +user_pref("extensions.shield-recipe-client.enabled", false); +user_pref("extensions.webservice.discoverURL", ""); +user_pref("general.warnOnAboutConfig", false); +user_pref("keyword.enabled", false); +user_pref("media.autoplay.enabled", false); +user_pref("media.navigator.enabled", false); +user_pref("media.peerconnection.enabled", false); +user_pref("media.video_stats.enabled", false); +user_pref("network.IDN_show_punycode", true); +user_pref("network.allow-experiments", false); +user_pref("network.captive-portal-service.enabled", false); +user_pref("network.dns.disablePrefetch", true); +user_pref("network.http.referer.spoofSource", true); +user_pref("network.http.speculative-parallel-limit", "0"); +user_pref("network.prefetch-next", false); +user_pref("network.trr.mode", 5); +user_pref("privacy.donottrackheader.enabled", true); +user_pref("privacy.donottrackheader.value", 1); +user_pref("privacy.resistFingerprinting", true); +user_pref("privacy.trackingprotection.enabled", true); +user_pref("privacy.trackingprotection.pbmode.enabled", true); +user_pref("signon.autofillForms", false); +user_pref("toolkit.telemetry.archive.enabled", false); +user_pref("toolkit.telemetry.bhrPing.enabled", false); +user_pref("toolkit.telemetry.cachedClientID", ""); +user_pref("toolkit.telemetry.enabled", false); +user_pref("toolkit.telemetry.firstShutdownPing.enabled", false); +user_pref("toolkit.telemetry.hybridContent.enabled", false); +user_pref("toolkit.telemetry.newProfilePing.enabled", false); +user_pref("toolkit.telemetry.prompted", 2); +user_pref("toolkit.telemetry.rejected", true); +user_pref("toolkit.telemetry.server", ""); +user_pref("toolkit.telemetry.shutdownPingSender.enabled", false); +user_pref("toolkit.telemetry.unified", false); +user_pref("toolkit.telemetry.unifiedIsOptIn", false); +user_pref("toolkit.telemetry.updatePing.enabled", false); +user_pref("webgl.disabled", true); diff --git a/reportbugrc b/reportbugrc @@ -0,0 +1,19 @@ +# reportbug preferences file +# character encoding: UTF-8 +# Version of reportbug this preferences file was written by +reportbug_version "6.6.0" +# default operating mode: one of: novice, standard, advanced, expert +mode standard +# default user interface +ui text +# offline setting - comment out to be online +#offline +# name and email setting (if non-default) +# realname "Antoine Amarilli" +email "a3nm@a3nm.net" +# Disable fallback mode by commenting out the following: +no-cc +header "X-Debbugs-CC: a3nm@a3nm.net" +smtphost reportbug.debian.org +# You can add other settings after this line. See +# /etc/reportbug.conf for a full listing of options. diff --git a/sway/config b/sway/config @@ -0,0 +1,192 @@ +# 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 somewhen, delete +# this file and re-run i3-config-wizard(1). +# + +# i3 config file (v4) +# +# Please see http://i3wm.org/docs/userguide.html for a complete reference! + +# exec compton -CGb + +set $mod Mod4 + +# font for window titles. ISO 10646 = Unicode +#font -*-Terminus*-*-*-*-*-*-*-*-*-*-*-* +font Terminus 10 +#font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1 + +client.background #000000 + +# Use Mouse+$mod to drag floating windows to their wanted position +floating_modifier $mod + +focus_follows_mouse yes + +#bindsym $mod+shift+Return exec "~/bin/urxvtcdfont" +bindsym $mod+Return exec gnome-terminal +#bindsym $mod+Return exec "urxvtpwd ~/bin/urxvtcdfont" +bindsym $mod+b exec "~/bin/sandboxed-browser" +bindsym $mod+o exec "gnome-terminal -e ~/bin/my-mutt" +bindsym $mod+i exec "gnome-terminal -e ~/bin_private/weechat" +bindsym $mod+Shift+t exec "~/bin/screenshot_sway" +bindsym $mod+Shift+s exec ~/bin/xpass +bindsym $mod+Shift+y exec ~/bin/my-rofi -show ssh +bindsym $mod+Shift+f exec ~/bin/xpapers +bindsym $mod+y [urgent=latest] focus + +bindsym $mod+Shift+a move container to workspace back_and_forth; workspace back_and_forth + +workspace_auto_back_and_forth yes + +# kill focused window +bindsym $mod+Shift+c kill +bindsym $mod+q kill + +# start dmenu (a program launcher) +bindsym $mod+e exec ~/bin/my-rofi -show run +bindsym $mod+shift+e exec ~/bin/my-rofi -show window +bindsym $mod+Shift+w exec "wen=`~/bin/my-rofi -dmenu` && exec ~/bin/wwen $wen" +bindsym $mod+m exec "gnome-terminal -e ~/bin/msr" +bindsym $mod+Shift+m exec "music=`~/bin/my-rofi -dmenu` && exec ~/bin/ytmusic $music" + +# change focus +bindsym $mod+h focus left +bindsym $mod+j focus down +bindsym $mod+k focus up +bindsym $mod+l focus right + +# move focused window +bindsym $mod+Shift+H move left +bindsym $mod+Shift+J move down +bindsym $mod+Shift+K move up +bindsym $mod+Shift+L move right + +# split in horizontal orientation +bindsym $mod+w split h + +# split in vertical orientation +bindsym $mod+v split v + +# enter fullscreen mode for the focused container +bindsym $mod+f fullscreen + +# change container layout (stacked, tabbed, default) +bindsym $mod+s layout stacking +bindsym $mod+t layout tabbed +bindsym $mod+d layout default + +# toggle tiling / floating +bindsym $mod+Shift+space floating toggle + +# change focus between tiling / floating windows +bindsym $mod+space focus mode_toggle + +bindsym $mod+Tab exec todo + +# focus the parent container +bindsym $mod+u focus parent + +bindsym $mod+a workspace back_and_forth +# assuming that there are at most two outputs +# bindsym $mod+Shift+a move workspace to output right + +# focus the child container +#bindcode $mod+d fo****cus child + +# switch to workspace +bindsym $mod+1 workspace 1 +bindsym $mod+2 workspace 2 +bindsym $mod+3 workspace 3 +bindsym $mod+4 workspace 4 +bindsym $mod+5 workspace 5 +bindsym $mod+6 workspace 6 +bindsym $mod+7 workspace 7 +bindsym $mod+8 workspace 8 +bindsym $mod+9 workspace 9 +bindsym $mod+0 workspace 10 + +# move focused container to workspace +bindsym $mod+Shift+1 move container to workspace 1 +bindsym $mod+Shift+2 move container to workspace 2 +bindsym $mod+Shift+3 move container to workspace 3 +bindsym $mod+Shift+4 move container to workspace 4 +bindsym $mod+Shift+5 move container to workspace 5 +bindsym $mod+Shift+6 move container to workspace 6 +bindsym $mod+Shift+7 move container to workspace 7 +bindsym $mod+Shift+8 move container to workspace 8 +bindsym $mod+Shift+9 move container to workspace 9 +bindsym $mod+Shift+0 move container to workspace 10 + +bindsym $mod+p workspace prev +bindsym $mod+n workspace next +bindsym $mod+Shift+p move container to output left +bindsym $mod+Shift+n move container to output right + + +# reload the configuration file +bindsym $mod+Shift+D 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+greater exit + +bindsym $mod+x exec ~/bin/afk_sway +bindsym $mod+Shift+x exec ~/bin/dodo_sway + +# 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 h resize shrink width 10 px or 10 ppt + bindsym j resize grow height 10 px or 10 ppt + bindsym k resize shrink height 10 px or 10 ppt + bindsym l resize grow width 10 px or 10 ppt + bindsym Shift+h resize shrink width 1 px or 1 ppt + bindsym Shift+j resize grow height 1 px or 1 ppt + bindsym Shift+k resize shrink height 1 px or 1 ppt + bindsym Shift+l resize grow width 1 px or 1 ppt + + + # back to normal: Enter or Escape + bindsym Return mode "default" + bindsym Escape mode "default" + bindsym $mod+r mode "default" +} + +bindsym $mod+r mode "resize" + +workspace_layout stacking + +# Start i3bar to display a workspace bar (plus the system information i3status +# finds out, if available) +bar { + status_command i3status + mode hide + position bottom + #font -*-Terminus*-*-*-*-*-*-*-*-*-*-*-* + font Terminus +} + +input * { + repeat_delay 250 + repeat_rate 50 + xkb_layout a3nm +} + +bindsym XF86AudioLowerVolume exec pavol '-5%' +bindsym XF86AudioRaiseVolume exec pavol '+5%' +bindsym XF86AudioMute exec /usr/bin/pactl set-sink-volume 0 0 +bindsym XF86MonBrightnessUp exec /usr/bin/xbacklight -inc 10 +bindsym XF86MonBrightnessDown exec /usr/bin/xbacklight -dec 5 + +#TODO default split ratio 2/3 +#TODO default veritcal split is stacked + +exec ~/bin/startup diff --git a/sway/status b/sway/status @@ -0,0 +1,65 @@ +general { + colors = true + interval = 1 + color_separator = "#00FF00" +} + +order += "ipv6" +order += "disk /" +order += "run_watch DHCP" +order += "wireless wlan0" +order += "ethernet eth0" +order += "battery 0" +order += "cpu_temperature 0" +order += "load" +order += "time" + +wireless wlan0 { + format_up = "W: (%quality at %essid) %ip" + format_down = "W: down" +} + +ethernet eth0 { + # if you use %speed, i3status requires root privileges + format_up = "E: %ip (%speed)" + format_down = "E: down" +} + +battery 0 { + format = "%status %percentage %remaining" + hide_seconds = true + integer_battery_capacity = true + last_full_capacity = true + low_threshold = 10 +} + +run_watch DHCP { + pidfile = "/var/run/dhclient*.pid" +} + +run_watch VPN { + pidfile = "/var/run/vpnc/pid" +} + +time { + format = "%Y-%m-%d %H:%M:%S" +} + +load { + format = "%1min" +} + +cpu_temperature 0 { + format = "T: %degrees °C" +} + +disk "/" { + format = "%free on /" +} + +volume master { + format = "vol %volume " + device = "default" + mixer = "Master" + mixer_idx = 0 +} diff --git a/vim/spell.vim b/vim/spell.vim @@ -0,0 +1,23 @@ +fun! SpellNext() + " from https://vi.stackexchange.com/a/17267/ + " Go to start of buffer and enable spell checking. + normal! gg + set spell + + " Record cursor position. + let l:pos = getpos('.') + + " Special case: first word is misspelled. + if spellbadword()[1] isnot# '' + return + endif + + " Try to find a misspelled word. + normal! ]s + + " No more words left if the position is unchanged from last + " time, so quit Vim. + if getpos('.') == l:pos + quit + endif +endfun diff --git a/weechat b/weechat @@ -1,25 +0,0 @@ -/mouse disable -meta-o => /set weechat.look.align_end_of_lines time -meta-e => /set weechat.look.align_end_of_lines message -meta-w => /bar toggle nicklist -meta-r => /bar toggle buffers -meta-g => /go - -/set weechat.bar.buffers.size_max 15 -/script install buffers.py -/script install go.py -/set weechat.look.eat_newline_glitch left -/set weechat.look.prefix_align_max 8 -/set weechat.bar.nicklist.size_max 8 - -/plugin load /usr/lib/weechat/plugins/perl.so - -/key bind ctrl-N /input history_global_next -/key bind ctrl-P /input history_global_previous - -/key bind ctrl-J /window page_down -/key bind ctrl-K /window page_up - -TODO: -use meta-n meta-p meta-u - diff --git a/weechat/.empty b/weechat/.empty diff --git a/weechat_2 b/weechat_2 @@ -0,0 +1,25 @@ +/mouse disable +meta-o => /set weechat.look.align_end_of_lines time +meta-e => /set weechat.look.align_end_of_lines message +meta-w => /bar toggle nicklist +meta-r => /bar toggle buffers +meta-g => /go + +/set weechat.bar.buffers.size_max 15 +/script install buffers.py +/script install go.py +/set weechat.look.eat_newline_glitch left +/set weechat.look.prefix_align_max 8 +/set weechat.bar.nicklist.size_max 8 + +/plugin load /usr/lib/weechat/plugins/perl.so + +/key bind ctrl-N /input history_global_next +/key bind ctrl-P /input history_global_previous + +/key bind ctrl-J /window page_down +/key bind ctrl-K /window page_up + +TODO: +use meta-n meta-p meta-u + diff --git a/xinitrc b/xinitrc @@ -7,5 +7,6 @@ ~/bin/layout eval $(gpg-agent --daemon) -exec ck-launch-session dbus-launch --exit-with-session i3 +#exec ck-launch-session dbus-launch --exit-with-session i3 +exec dbus-launch --exit-with-session i3 diff --git a/xkb/README b/xkb/README @@ -0,0 +1,10 @@ +This folder gets symlinked as ~/.xkb. + +To load under Xorg: + +- xkbcomp -I$HOME/config/xkb ~/config/xkb/map $DISPLAY + +To load with wayland and sway: + +- XKB_DEFAULT_LAYOUT=a3nm sway + diff --git a/xkb/symbols/a3nm b/xkb/symbols/a3nm @@ -0,0 +1,7 @@ +// based on a keyboard map from an 'xkb/symbols/dk' file + +partial alphanumeric_keys +xkb_symbols "dvorak" { + include "pc+us(dvorak)+inet(evdev)+accents(accents)+compose(caps)+altgr(altgr)+space(space)" +}; + diff --git a/xkb/symbols/accents b/xkb/symbols/accents @@ -1,18 +1,18 @@ partial alphanumeric_keys xkb_symbols "accents" { - key <AC02> { [ o, O, ocircumflex, Ocircumflex ] }; - key <AC03> { [ e, E, eacute, Eacute ] }; - key <AB01> { [ semicolon, colon, agrave, Agrave ] }; - key <AB03> { [ j, J, egrave, Egrave ] }; - key <AD01> { [ apostrophe, quotedbl, acircumflex, Acircumflex ] }; - key <AD02> { [ comma, less, dead_cedilla ] }; - key <AD03> { [ period, greater, ecircumflex, Ecircumflex ] }; - key <AD04> { [ p, P, ucircumflex, Ucircumflex ] }; - key <AC04> { [ u, U, ugrave, Ugrave ] }; - key <AC05> { [ i, I, icircumflex, Icircumflex ] }; - key <AC07> { [ h, H, dead_acute ] }; - key <AC08> { [ t, T, dead_circumflex ] }; - key <AC09> { [ n, N, dead_grave ] }; - key <AC10> { [ s, S, dead_diaeresis ] }; - key <AD08> { [ c, C, ccedilla, Ccedilla ] }; + replace key <AC02> { [ o, O, ocircumflex, Ocircumflex ] }; + replace key <AC03> { [ e, E, eacute, Eacute ] }; + replace key <AB01> { [ semicolon, colon, agrave, Agrave ] }; + replace key <AB03> { [ j, J, egrave, Egrave ] }; + replace key <AD01> { [ apostrophe, quotedbl, acircumflex, Acircumflex ] }; + replace key <AD02> { [ comma, less, dead_cedilla ] }; + replace key <AD03> { [ period, greater, ecircumflex, Ecircumflex ] }; + replace key <AD04> { [ p, P, ucircumflex, Ucircumflex ] }; + replace key <AC04> { [ u, U, ugrave, Ugrave ] }; + replace key <AC05> { [ i, I, icircumflex, Icircumflex ] }; + replace key <AC07> { [ h, H, dead_acute ] }; + replace key <AC08> { [ t, T, dead_circumflex ] }; + replace key <AC09> { [ n, N, dead_grave ] }; + replace key <AC10> { [ s, S, dead_diaeresis ] }; + replace key <AD08> { [ c, C, ccedilla, Ccedilla ] }; }; diff --git a/zsh/path b/zsh/path @@ -8,3 +8,6 @@ MANPATH=~/local/share/man:$MANPATH export MANPATH INFOPATH=~/local/share/info:$INFOPATH export INFOPATH + +export PATH="$HOME/.cargo/bin:$PATH" +