diff options
35 files changed, 151 insertions, 103 deletions
diff --git a/fonts/.fonts/Raleway-Black.ttf b/fonts/.fonts/Raleway-Black.ttf Binary files differnew file mode 100644 index 0000000..658de36 --- /dev/null +++ b/fonts/.fonts/Raleway-Black.ttf diff --git a/fonts/.fonts/Raleway-BlackItalic.ttf b/fonts/.fonts/Raleway-BlackItalic.ttf Binary files differnew file mode 100644 index 0000000..99d169c --- /dev/null +++ b/fonts/.fonts/Raleway-BlackItalic.ttf diff --git a/fonts/.fonts/Raleway-Bold.ttf b/fonts/.fonts/Raleway-Bold.ttf Binary files differnew file mode 100644 index 0000000..92d30ce --- /dev/null +++ b/fonts/.fonts/Raleway-Bold.ttf diff --git a/fonts/.fonts/Raleway-BoldItalic.ttf b/fonts/.fonts/Raleway-BoldItalic.ttf Binary files differnew file mode 100644 index 0000000..cdf44e1 --- /dev/null +++ b/fonts/.fonts/Raleway-BoldItalic.ttf diff --git a/fonts/.fonts/Raleway-ExtraBold.ttf b/fonts/.fonts/Raleway-ExtraBold.ttf Binary files differnew file mode 100644 index 0000000..4b0371b --- /dev/null +++ b/fonts/.fonts/Raleway-ExtraBold.ttf diff --git a/fonts/.fonts/Raleway-ExtraBoldItalic.ttf b/fonts/.fonts/Raleway-ExtraBoldItalic.ttf Binary files differnew file mode 100644 index 0000000..49f5cb1 --- /dev/null +++ b/fonts/.fonts/Raleway-ExtraBoldItalic.ttf diff --git a/fonts/.fonts/Raleway-ExtraLight.ttf b/fonts/.fonts/Raleway-ExtraLight.ttf Binary files differnew file mode 100644 index 0000000..d682219 --- /dev/null +++ b/fonts/.fonts/Raleway-ExtraLight.ttf diff --git a/fonts/.fonts/Raleway-ExtraLightItalic.ttf b/fonts/.fonts/Raleway-ExtraLightItalic.ttf Binary files differnew file mode 100644 index 0000000..2d47fbf --- /dev/null +++ b/fonts/.fonts/Raleway-ExtraLightItalic.ttf diff --git a/fonts/.fonts/Raleway-Italic.ttf b/fonts/.fonts/Raleway-Italic.ttf Binary files differnew file mode 100644 index 0000000..0f8107e --- /dev/null +++ b/fonts/.fonts/Raleway-Italic.ttf diff --git a/fonts/.fonts/Raleway-Light.ttf b/fonts/.fonts/Raleway-Light.ttf Binary files differnew file mode 100644 index 0000000..23f7fb1 --- /dev/null +++ b/fonts/.fonts/Raleway-Light.ttf diff --git a/fonts/.fonts/Raleway-LightItalic.ttf b/fonts/.fonts/Raleway-LightItalic.ttf Binary files differnew file mode 100644 index 0000000..187619e --- /dev/null +++ b/fonts/.fonts/Raleway-LightItalic.ttf diff --git a/fonts/.fonts/Raleway-Medium.ttf b/fonts/.fonts/Raleway-Medium.ttf Binary files differnew file mode 100644 index 0000000..b46bd18 --- /dev/null +++ b/fonts/.fonts/Raleway-Medium.ttf diff --git a/fonts/.fonts/Raleway-MediumItalic.ttf b/fonts/.fonts/Raleway-MediumItalic.ttf Binary files differnew file mode 100644 index 0000000..aabbfe9 --- /dev/null +++ b/fonts/.fonts/Raleway-MediumItalic.ttf diff --git a/fonts/.fonts/Raleway-Regular.ttf b/fonts/.fonts/Raleway-Regular.ttf Binary files differnew file mode 100644 index 0000000..ec9b483 --- /dev/null +++ b/fonts/.fonts/Raleway-Regular.ttf diff --git a/fonts/.fonts/Raleway-SemiBold.ttf b/fonts/.fonts/Raleway-SemiBold.ttf Binary files differnew file mode 100644 index 0000000..d228458 --- /dev/null +++ b/fonts/.fonts/Raleway-SemiBold.ttf diff --git a/fonts/.fonts/Raleway-SemiBoldItalic.ttf b/fonts/.fonts/Raleway-SemiBoldItalic.ttf Binary files differnew file mode 100644 index 0000000..6c5bbc1 --- /dev/null +++ b/fonts/.fonts/Raleway-SemiBoldItalic.ttf diff --git a/fonts/.fonts/Raleway-Thin.ttf b/fonts/.fonts/Raleway-Thin.ttf Binary files differnew file mode 100644 index 0000000..ed48751 --- /dev/null +++ b/fonts/.fonts/Raleway-Thin.ttf diff --git a/fonts/.fonts/Raleway-ThinItalic.ttf b/fonts/.fonts/Raleway-ThinItalic.ttf Binary files differnew file mode 100644 index 0000000..a431542 --- /dev/null +++ b/fonts/.fonts/Raleway-ThinItalic.ttf diff --git a/git/.gitconfig b/git/.gitconfig index a368099..4a2c971 100644 --- a/git/.gitconfig +++ b/git/.gitconfig @@ -34,11 +34,6 @@ recurseSubmodules = check [rerere] enabled = true -[filter "lfs"] - clean = git-lfs clean -- %f - smudge = git-lfs smudge -- %f - process = git-lfs filter-process - required = true [pull] ff = only [init] @@ -48,3 +43,8 @@ xfuncname = "^((\\S.*)?::.*)$" [diff "wat"] xfuncname = "^\\s*(\\((func|module).*)$" +[filter "lfs"] + process = git-lfs filter-process + required = true + clean = git-lfs clean -- %f + smudge = git-lfs smudge -- %f diff --git a/i3/.i3/config b/i3/.i3/config index ac7186e..fe75f42 100644 --- a/i3/.i3/config +++ b/i3/.i3/config @@ -12,7 +12,7 @@ exec xautolock -time 10 -locker 'i3lock -d' -corners 000- -cornersize 30 bindsym $mod+Control+Shift+l exec xautolock -locknow # Assignments -assign [class="Firefox"] 1 +assign [class="firefox-esr"] 1 assign [class="thunderbird"] 10 assign [class="Zotero"] 3 @@ -31,11 +31,11 @@ bindsym $mod+Shift+Q kill bindsym $mod+Return exec urxvt bindsym $mod+Shift+v exec urxvt -e vim bindsym $mod+Shift+m exec urxvt -e cmus -for_window [class="URxvt" instance="floating-large"] floating toggle resize set 1200 800 +for_window [class="URxvt" instance="floating-large"] floating toggle move position center sticky enable # Super+i is the settings icon on my Lenovo Yoga bindsym $mod+i exec urxvt -name floating-large -e htop bindsym $mod+Shift+i exec urxvt -name floating-large -e sudo htop -for_window [class="URxvt" instance="floating-small"] floating toggle resize set 600 400 +for_window [class="URxvt" instance="floating-small"] floating toggle move position center sticky enable bindsym XF86Calculator exec urxvt -name floating-small -e python3 # Special keys: print screen @@ -47,9 +47,9 @@ bindsym --release Control+Print exec scrot -z -s '/tmp/%Y-%m-%d-%H%M%S_$wx$h.png bindsym $mod+c exec find-cursor -c '#ff0000' # Special keys: audio -bindsym XF86AudioMute exec amixer sset Master toggle && kill -s 10 `pidof i3status` -bindsym XF86AudioRaiseVolume exec amixer sset Master 1%+ && kill -s 10 `pidof i3status` -bindsym XF86AudioLowerVolume exec amixer sset Master 1%- && kill -s 10 `pidof i3status` +bindsym XF86AudioMute exec amixer -D pulse sset Master toggle && kill -s 10 `pidof i3status` +bindsym XF86AudioRaiseVolume exec amixer -D pulse sset Master 1%+ && kill -s 10 `pidof i3status` +bindsym XF86AudioLowerVolume exec amixer -D pulse sset Master 1%- && kill -s 10 `pidof i3status` # Special keys: monitor brightness / nightlight bindsym XF86MonBrightnessUp exec bash -c 'echo "$(($(cat /sys/class/backlight/amdgpu_bl0/brightness)+10))" > /sys/class/backlight/amdgpu_bl0/brightness' @@ -91,12 +91,11 @@ bindsym $mod+Down move workspace to output up bindsym $mod+h split h bindsym $mod+v split v -# change container layout / fullscreen / floating-tiling -bindsym $mod+f fullscreen -bindsym $mod+s layout stacking +# change container layout / floating-tiling / stickiness bindsym $mod+w layout tabbed bindsym $mod+e layout toggle split -bindsym $mod+Shift+space floating toggle +bindsym $mod+f floating toggle +bindsym $mod+s sticky toggle # switch to workspace bindsym $mod+1 workspace 1 diff --git a/system/.bashrc b/system/.bashrc index 9d74f8f..6286f22 100644 --- a/system/.bashrc +++ b/system/.bashrc @@ -122,8 +122,8 @@ function _update_ps1() { PS1="$( $HOME/bin/powerline-go \ -max-width 40 \ - -modules host,user,cwd,git,nix-shell,jobs,exit \ - -priority host,user,git,cwd,nix-shell,jobs,exit \ + -modules host,venv,cwd,git,nix-shell,jobs,exit \ + -priority host,git,venv,cwd,nix-shell,jobs,exit \ -error $? \ -git-disable-stats untracked \ -hostname-only-if-ssh \ @@ -142,3 +142,7 @@ PERL_MB_OPT="--install_base \"/home/camil/perl5\""; export PERL_MB_OPT; PERL_MM_OPT="INSTALL_BASE=/home/camil/perl5"; export PERL_MM_OPT; source ~/.profile + +# Wasmer +export WASMER_DIR="/home/camil/.wasmer" +[ -s "$WASMER_DIR/wasmer.sh" ] && source "$WASMER_DIR/wasmer.sh" diff --git a/system/.config/mimeapps.list b/system/.config/mimeapps.list index e0c6f2f..94181ee 100644 --- a/system/.config/mimeapps.list +++ b/system/.config/mimeapps.list @@ -12,6 +12,8 @@ application/x-extension-xhtml=firefox-esr.desktop application/x-extension-xht=firefox-esr.desktop application/x-desktop=gio-launch.desktop; image/jpeg=feh.desktop; +text/plain=org.gnome.gedit.desktop +x-scheme-handler/ente=ente.desktop [Added Associations] x-scheme-handler/http=firefox-esr.desktop; @@ -26,5 +28,8 @@ application/x-extension-xhtml=firefox-esr.desktop; application/x-extension-xht=firefox-esr.desktop; application/pdf=org.gnome.Evince.desktop; application/x-desktop=gio-launch.desktop; -image/jpeg=feh.desktop; +image/jpeg=gimp.desktop;feh.desktop; application/vnd.openxmlformats-officedocument.wordprocessingml.document=libreoffice-writer.desktop; +application/x-latex=org.gnome.gedit.desktop; +txt/plain=org.gnome.gedit.desktop; +text/plain=org.gnome.gedit.desktop; diff --git a/system/.config/zathura/zathurarc b/system/.config/zathura/zathurarc new file mode 100644 index 0000000..5406473 --- /dev/null +++ b/system/.config/zathura/zathurarc @@ -0,0 +1 @@ +set database sqlite diff --git a/system/.profile b/system/.profile index 39295eb..fd03078 100644 --- a/system/.profile +++ b/system/.profile @@ -1,4 +1,4 @@ -export PATH="/usr/local/texlive/2025/bin/x86_64-linux:$PATH" +export PATH="/usr/local/texlive/2026/bin/x86_64-linux:$PATH" export PATH="/sbin:$PATH" export PATH="/usr/sbin:$PATH" export PATH="/usr/local/sbin:$PATH" @@ -16,6 +16,10 @@ export PATH="$HOME/.local/bin:$PATH" [ -f "/home/camil/.ghcup/env" ] && . "/home/camil/.ghcup/env" +export NVM_DIR="$HOME/.nvm" +[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm +[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion + [ -f /home/camil/.nix-profile/etc/profile.d/nix.sh ] && . /home/camil/.nix-profile/etc/profile.d/nix.sh # with TERM=rxvt-unicode-256color, backspace and other keys don't work in nix shells [ "$IN_NIX_SHELL" = "" -a "$TERM" = "rxvt-unicode-256color" ] || TERM=rxvt-256color @@ -23,9 +27,9 @@ export PATH="$HOME/.local/bin:$PATH" export MANPATH="/usr/local/git/man:$MANPATH" export MANPATH="/usr/local/mysql/man:$MANPATH" export MANPATH="/usr/local/man:$MANPATH" -export MANPATH="/usr/local/texlive/2025/texmf-dist/doc/man:$MANPATH" +export MANPATH="/usr/local/texlive/2026/texmf-dist/doc/man:$MANPATH" -export INFOPATH="/usr/local/texlive/2025/texmf-dist/doc/info:$INFOPATH" +export INFOPATH="/usr/local/texlive/2026/texmf-dist/doc/info:$INFOPATH" export SUDO_ASKPASS=~/bin/askpass export HISTTIMEFORMAT="%Y-%m-%d %T " @@ -35,6 +39,8 @@ export _JAVA_OPTIONS='-Dawt.useSystemAAFontSettings=gasp -Dsun.java2d.opengl=tru # Enable sync in Chromium: https://stackoverflow.com/a/67459416 and https://askubuntu.com/a/780874 export CHROMIUM_FLAGS="--oauth2-client-id=77185425430.apps.googleusercontent.com --oauth2-client-secret=OTJgUOQcT7lO7GsGZq2G4IlT" +export QT_QPA_PLATFORMTHEME=qt5ct + shopt -s globstar [ "$(tty)" = "/dev/tty1" ] && exec startx diff --git a/texlive/install-packages.sh b/texlive/install-packages.sh new file mode 100755 index 0000000..ad0399d --- /dev/null +++ b/texlive/install-packages.sh @@ -0,0 +1,2 @@ +#!/bin/bash +sudo tlmgr install $(cat packages.txt) diff --git a/texlive/packages.txt b/texlive/packages.txt new file mode 100644 index 0000000..eb3eedf --- /dev/null +++ b/texlive/packages.txt @@ -0,0 +1,17 @@ +adjustbox +amsmath +biber +biblatex +bidi +booktabs +cleveref +expex +gb4e +multirow +pgf +pgfplots +polyglossia +times +titlesec +xpatch +zref diff --git a/texlive/texlive.profile b/texlive/texlive.profile index 9d89235..335b855 100644 --- a/texlive/texlive.profile +++ b/texlive/texlive.profile @@ -1,11 +1,11 @@ selected_scheme scheme-custom -TEXDIR /usr/local/texlive/2025 -TEXMFCONFIG ~/.texlive2025/texmf-config +TEXDIR /usr/local/texlive/2026 +TEXMFCONFIG ~/.texlive2026/texmf-config TEXMFHOME ~/texmf TEXMFLOCAL /usr/local/texlive/texmf-local -TEXMFSYSCONFIG /usr/local/texlive/2025/texmf-config -TEXMFSYSVAR /usr/local/texlive/2025/texmf-var -TEXMFVAR ~/.texlive2025/texmf-var +TEXMFSYSCONFIG /usr/local/texlive/2026/texmf-config +TEXMFSYSVAR /usr/local/texlive/2026/texmf-var +TEXMFVAR ~/.texlive2026/texmf-var binary_x86_64-linux 1 collection-basic 1 collection-latex 1 diff --git a/transmission/.config/transmission-daemon/settings.json b/transmission/.config/transmission-daemon/settings.json index b4b883c..5745347 100644 --- a/transmission/.config/transmission-daemon/settings.json +++ b/transmission/.config/transmission-daemon/settings.json @@ -6,11 +6,16 @@ "alt-speed-time-enabled": false, "alt-speed-time-end": 1020, "alt-speed-up": 50, + "announce-ip": "", + "announce-ip-enabled": false, + "anti-brute-force-enabled": false, + "anti-brute-force-threshold": 100, "bind-address-ipv4": "0.0.0.0", "bind-address-ipv6": "::", "blocklist-enabled": false, "blocklist-url": "http://www.example.com/blocklist", "cache-size-mb": 4, + "default-trackers": "", "dht-enabled": true, "download-dir": "/home/camil/Downloads", "download-queue-enabled": true, @@ -30,16 +35,20 @@ "peer-port-random-high": 65535, "peer-port-random-low": 49152, "peer-port-random-on-start": false, - "peer-socket-tos": "default", + "peer-socket-tos": "le", "pex-enabled": true, + "pidfile": "", "port-forwarding-enabled": true, "preallocation": 1, + "preferred_transport": "utp", "prefetch-enabled": true, + "proxy_url": "", "queue-stalled-enabled": true, "queue-stalled-minutes": 30, - "ratio-limit": 0, + "ratio-limit": 0.0, "ratio-limit-enabled": true, "rename-partial-files": true, + "reqq": 2000, "rpc-authentication-required": false, "rpc-bind-address": "0.0.0.0", "rpc-enabled": true, @@ -47,22 +56,35 @@ "rpc-host-whitelist-enabled": true, "rpc-password": "{80135b8af44ad44183cbd1539bf27a083eb66762fEPjB2GR", "rpc-port": 9091, + "rpc-socket-mode": "0750", "rpc-url": "/transmission/", "rpc-username": "", "rpc-whitelist": "127.0.0.1,::1", "rpc-whitelist-enabled": true, "scrape-paused-torrents-enabled": true, + "script-torrent-added-enabled": false, + "script-torrent-added-filename": "", "script-torrent-done-enabled": false, "script-torrent-done-filename": "", + "script-torrent-done-seeding-enabled": false, + "script-torrent-done-seeding-filename": "", "seed-queue-enabled": false, "seed-queue-size": 10, + "sequential_download": false, + "sleep-per-seconds-during-verify": 100, "speed-limit-down": 100, "speed-limit-down-enabled": false, "speed-limit-up": 100, "speed-limit-up-enabled": false, "start-added-torrents": true, + "start_paused": false, + "tcp-enabled": true, + "torrent-added-verify-mode": "fast", "trash-original-torrent-files": false, - "umask": 18, + "umask": "022", "upload-slots-per-torrent": 14, - "utp-enabled": true -} + "utp-enabled": true, + "watch-dir": "", + "watch-dir-enabled": false, + "watch-dir-force-generic": false +}
\ No newline at end of file diff --git a/vim/.config/nvim/lua/lsp/init.lua b/vim/.config/nvim/lua/lsp/init.lua index 474f649..1739cee 100644 --- a/vim/.config/nvim/lua/lsp/init.lua +++ b/vim/.config/nvim/lua/lsp/init.lua @@ -1,64 +1,3 @@ -local first_hover_code_i = 0 -local first_hover_code_line = -1 -local first_hover_code_col = -1 -local first_hover_code_prev = '' - --- Returns the first code block from the markdown returned for the LSP request --- textDocument/hover. Multiple lines are joined with a space. -function _G.lsp_first_hover_code() - --[[ NB: there is a bug that causes statusline to be reloaded continuously; - see https://github.com/neovim/neovim/issues/14303. It is not good to do a - sync request every time. Instead, keep track of line & col and only - update when either has changed. This should be fixed in nvim 0.5, after - which the first_hover_code_* variables and this logic can be removed. ]] - - local line, col = unpack(vim.api.nvim_win_get_cursor(0)) - if line == first_hover_code_line and col == first_hover_code_col then - return first_hover_code_prev - end - first_hover_code_line = line - first_hover_code_col = col - - --[[ To check whether the bug has been fixed: - vim.api.nvim_echo({{'request '},{tostring(first_hover_code_i)},{tostring(line)}},false,{}) - first_hover_code_i = first_hover_code_i + 1 - --]] - - if not vim.lsp.buf.server_ready() then return '' end - - local responses = vim.lsp.buf_request_sync( - 0, - 'textDocument/hover', - vim.lsp.util.make_position_params(), - 1000 - ) - - if not responses then return '' end - - local full_result = '' - local markdown_started = false - - for _, response in ipairs(responses) do - if response.result and response.result.contents.value then - for line in response.result.contents.value:gmatch '[^\n]+' do - if line:sub(0,3) == '```' then - if markdown_started then - first_hover_code_prev = full_result - return full_result - else - markdown_started = true - end - else - full_result = full_result .. ' ' .. line - end - end - end - end - - first_hover_code_prev = full_result - return full_result -end - local function on_attach (client, bufnr) local function buf_set_keymap(...) vim.api.nvim_buf_set_keymap(bufnr, ...) end local function buf_set_option(...) vim.api.nvim_buf_set_option(bufnr, ...) end diff --git a/vim/.config/nvim/spell/de.utf-8.spl b/vim/.config/nvim/spell/de.utf-8.spl Binary files differnew file mode 100644 index 0000000..37cbbca --- /dev/null +++ b/vim/.config/nvim/spell/de.utf-8.spl diff --git a/vim/.config/nvim/spell/de.utf-8.sug b/vim/.config/nvim/spell/de.utf-8.sug Binary files differnew file mode 100644 index 0000000..13ff0a3 --- /dev/null +++ b/vim/.config/nvim/spell/de.utf-8.sug diff --git a/vim/.config/nvim/spell/en.utf-8.add b/vim/.config/nvim/spell/en.utf-8.add index 66d373b..aca7765 100644 --- a/vim/.config/nvim/spell/en.utf-8.add +++ b/vim/.config/nvim/spell/en.utf-8.add @@ -259,3 +259,57 @@ subordinator agnostically creolization overgeneration +frequentative +countability +subtractive +atomicity +articulatory +unconsiously/! +Rhotic +Diachrony +diachrony +morphosyntactically +complementarily +connectedness +allomorphs +complementariness +semelfactive +morphosyntax +rhotics +rhotic +phonestheme +markedness +augmentatives +affricates +subevents +phonaestheme +Phonaesthemes +phonaesthemes +ideophones +phonaesthemic +boundedness +affricate +eventive +selectional +a priori +ideophonic +ideophone +obstruents +rhoticized +mereotopology +mereology +mereological +parthood +mereotopologically +ontologically +mereotopological +singulative +singulatives +sequentiality +pluralia +tantum +cf +lexicalised +spatiotemporal +bipartites +unproblematically diff --git a/vim/.config/nvim/spell/en.utf-8.add.spl b/vim/.config/nvim/spell/en.utf-8.add.spl Binary files differindex 679e71c..9bf4420 100644 --- a/vim/.config/nvim/spell/en.utf-8.add.spl +++ b/vim/.config/nvim/spell/en.utf-8.add.spl diff --git a/vim/.vim/after/ftplugin/tex.vim b/vim/.vim/after/ftplugin/tex.vim index 23b1a40..66be81d 100644 --- a/vim/.vim/after/ftplugin/tex.vim +++ b/vim/.vim/after/ftplugin/tex.vim @@ -8,13 +8,15 @@ function! SyncTeXToPDF() \ shellescape(g:synctex_zathura_pdf_filename)) endfunction -function! g:SyncPDFToTeX(input, line) - " Focus the window vim is running in. - exe "silent !i3-msg '[id=\"" . environ()['WINDOWID'] . "\"] focus'" - " Open the file name and jump to the right line. - " Mysteriously, we need `cd .` to fix the file name in the tabline. - " Putting this in one `exe` seems to reduce flickering. - exe 'tab drop ' . a:input . ' | silent ' . a:line . ' | silent cd .' -endfunction +if !exists("*g:SyncPDFToTeX") + function! g:SyncPDFToTeX(input, line) + " Focus the window vim is running in. + exe "silent !i3-msg '[id=\"" . environ()['WINDOWID'] . "\"] focus'" + " Open the file name and jump to the right line. + " Mysteriously, we need `cd .` to fix the file name in the tabline. + " Putting this in one `exe` seems to reduce flickering. + exe 'tab drop ' . a:input . ' | silent ' . a:line . ' | silent cd .' + endfunction +endif map <C-T> :call SyncTeXToPDF()<CR> @@ -188,9 +188,6 @@ let g:VM_case_setting = 'sensitive' " Don't let match-up mess up the statusline let g:matchup_matchparen_status_offscreen=0 -" Status line based on LSP -set statusline+=%{luaeval('lsp_first_hover_code()')} - " Clean has no language server, we use the cloogletags statusline component set statusline+=%{cleanvim#tags#statusline()}%< |
